c语言select函数,c++ select函数

C语言 select函数,第一个参数,为什么需要最大文件描述符加1

因为文件描述符是从0 开始的。 0 1 2。。。。。最大文件描述符是2, 但是实际上监听的文件描述符是3个

网站建设哪家好,找成都创新互联!专注于网页设计、网站建设、微信开发、重庆小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了广水免费建站欢迎大家使用!

C语言,写一个函数select(int n, double a[], double b[], double x)?

int select(int n, double a[], double b[], double x) //函数的返回值是数组a 中大于等于x 的数的个数

{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) //函数的返回值是数组a 中大于等于x 的数的个数

{double *p,*q;

for(p=a,q=b;pb+n;p++)

if(*p=x)*q++=*p;

return p-a;

}

linux C语言select函数怎么不能实现sleep呀?

我修改了一下,运行一下试试,祝你好运:

#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;

}

C语言问题

二、填空题

1. 以下程序输出的结果是__0______ 。

main()

{ int a=5,b=4,c=3,d;

d=(abc);

printf("%d\n",d);

}

2. 以下程序输出的结果是___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位的正整数,要求:(1)求出它是几位数;(2)分别打印出每一位数字;

#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. 程序运行后输出的结果是:____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. 下面程序运行后输出的结果是:__sum= 9______。

main( )

{ int j, sum=0;

for(j=1;j10;j++)

{ sum=0;

sum=sum+j;

}

printf(“sum=%2d”, sum);

}

三、编程题

1. 打印出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。例如,153是一水仙花数,因为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. 以下程序的输出结果是_abc_______ 。

main()

{ char s[]="abcdef";

s[3]=‘\0';

printf("%s\n",s); }

2. 以下程序中,select 函数的功能是:在N行M列的二维数组中,选出一个最大值作为函数值返回,并通过形参传回此最大值所在的行下标。请填空。

#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中的数字字符放入d数组中,最后输出d中的字符串。例如,输入字符串:abc123edf456gh,执行程序后输出:123456。请填空。

#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之内的素数。


标题名称:c语言select函数,c++ select函数
网页URL:http://scyanting.com/article/dsihpeg.html