因為文件描述符是從0 開始的。 0 1 2。。。。。最大文件描述符是2, 但是實際上監(jiān)聽的文件描述符是3個

網(wǎng)站建設哪家好,找成都創(chuàng)新互聯(lián)!專注于網(wǎng)頁設計、網(wǎng)站建設、微信開發(fā)、重慶小程序開發(fā)、集團企業(yè)網(wǎng)站建設等服務項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了廣水免費建站歡迎大家使用!
int select(int n, double a[], double b[], double x) //函數(shù)的返回值是數(shù)組a 中大于等于x 的數(shù)的個數(shù)
{int i,k=0;
for(i=0;in;i++)
if(b[i]=x)a[k++]=b[i];
return k;
}
或:
int select(int n, double a[], double b[], double x) //函數(shù)的返回值是數(shù)組a 中大于等于x 的數(shù)的個數(shù)
{double *p,*q;
for(p=a,q=b;pb+n;p++)
if(*p=x)*q++=*p;
return p-a;
}
我修改了一下,運行一下試試,祝你好運:
#include stdio.h
#include sys/select.h
#include sys/time.h
#include sys/types.h
#include unistd.h
#include errno.h
#include string.h
int main()
{
struct timeval tv;
int i =0;
while( i++ 10)
{
tv.tv_sec = 1;
tv.tv_usec = 0;
printf("%d\n", i);
fflush(stdout);
int ret = select (0, NULL, NULL, NULL, tv);
if (ret == -1)
{
fprintf (stdout, "select error . errno=%d [%s]\n", errno, strerror(errno));
break;
}
//sleep(1);
//usleep(1000000);
}
return 0;
}
二、填空題
1. 以下程序輸出的結(jié)果是__0______ 。
main()
{ int a=5,b=4,c=3,d;
d=(abc);
printf("%d\n",d);
}
2. 以下程序輸出的結(jié)果是___i=3,j=3,k=2_____ 。
#includestdio.h
main()
{ int i,j,k,a=2,b=3;
i=(a++==--b)?a++:--b;
j=--a;k=b++;
printf("i=%d,j=%d, k=%d\n",i,j,k);
}
三、編程題
1. 給出一百分制成績,要求輸出成績等級‘A’、‘B’、‘C’、‘D’、‘E’。90分以上為‘A’,80~89分為‘B’,70~79分為‘C’,60~69分為‘D’,60分以下為‘E’。
#includestdio.h
void mian()
{
int score;
scanf("%d",score);
if(score 60)
putchar('E');
else if(score = 60 score 70)
putchar('D');
else if(score = 70 score 80)
putchar('C');
else if(score = 80 score 90)
putchar('B');
else (score =90)
putchar('A');
}
2. 給一個不多于5位的正整數(shù),要求:(1)求出它是幾位數(shù);(2)分別打印出每一位數(shù)字;
#include stdio.h
void main()
{
int num,a,count =0;
scanf("%d",num);
do{
a= num % 10;
printf("%d\n",a);
count++;
}while(num /= 10);
printf("%d",count);
}
二、填空題
1. 程序運行后輸出的結(jié)果是:____0122____。
main()
{ int i;
for(i=0;i3;i++)
switch(i)
{ case 1: printf("%d",i); break;
case 2: printf("%d",i);
default: printf("%d",i);
}
}
2. 下面程序運行后輸出的結(jié)果是:__sum= 9______。
main( )
{ int j, sum=0;
for(j=1;j10;j++)
{ sum=0;
sum=sum+j;
}
printf(“sum=%2d”, sum);
}
三、編程題
1. 打印出所有的“水仙花數(shù)”,所謂“水仙花數(shù)”是指一個3位數(shù),其各位數(shù)字立方和等于該數(shù)本身。例如,153是一水仙花數(shù),因為153=13+53+33。
#include stdio.h
void main(){
int i,j,k;
for(i=1;i10;i++)
for(j=0;j10;j++)
for(k=0;k10;k++)
if( (i*100+j*10+k)==((i*i*i)+(j*j*j)+(k*k*k)))
printf("%d%d%d ",i,j,k);
}
二、填空題
1. 以下程序的輸出結(jié)果是_abc_______ 。
main()
{ char s[]="abcdef";
s[3]=‘\0';
printf("%s\n",s); }
2. 以下程序中,select 函數(shù)的功能是:在N行M列的二維數(shù)組中,選出一個最大值作為函數(shù)值返回,并通過形參傳回此最大值所在的行下標。請?zhí)羁铡?/p>
#define N 3
#define M 3
select(int a[N][M],int *n)
{ int i,j,row=1,colum=1;
for(i=0;i for(j=0;j if(a[i][j]a[row][colum]){row=i;colum=j;}
*n= ________;
return ________;
}
main()
{int a[N][M]={9,11,23,6,1,15,9,17,20},max,n;
max=select(a,n);
printf("max=%d,line=%d\n",max,n);
}
3. 以下程序的功能是將字符串s中的數(shù)字字符放入d數(shù)組中,最后輸出d中的字符串。例如,輸入字符串:abc123edf456gh,執(zhí)行程序后輸出:123456。請?zhí)羁铡?/p>
#include
#include
main()
{ char s[80], d[80]; int i,j;
gets(s);
for(i=j=0;s[i]!='\0';i++)
if( ________ ) { d[j]=s[i]; j++; }
d[j]='\0';
puts(d);}
三、編程題
1. 用篩選法求100之內(nèi)的素數(shù)。
網(wǎng)頁標題:c語言select函數(shù),c++ select函數(shù)
網(wǎng)頁網(wǎng)址:http://www.yijiale78.com/article46/dsihpeg.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供關(guān)鍵詞優(yōu)化、網(wǎng)站建設、網(wǎng)站營銷、網(wǎng)站策劃、網(wǎng)站收錄、網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)