该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
26. 若有以下说明,则数值为4的表达式是( )
int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};
char c='a',d,g;
A. a[g-c] B. a[4] C. a['d'-'c'] D. a['d'-c]
27. 若有说明:int i,j=7,*p=&i;,则与i=j;等价的语句是( )
A. i=*p; B. *p=*&j; C. i=&j; D. i=**p;
28. 以下对C语言函数的有关描述中,正确的是( )
A. 在c中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参
B. C函数既可以嵌套定义又可以递归调用
C. 函数必须有返回值,否则不能使用函数
D. C程序中有调用关系的所有函数必须放在同一个源程序文件中
29. 设有定义语句“struct {int x;int y;} d[2]={{1,3},{2,7}};”,则
语句:printf(“%d\n”,d[0].y/d[0].x*d[1].x);的输出是( )
A. 0 B. 1 C. 3 D. 6
30. 下列语句中,将c定义为文件型指针的是 ( )
A. FILE c B. FILE *c; C. file c; D. file *c;
31. 设有以下宏定义,则执行语句“z=2*(N+Y(5+1));”后,z的值为( )
#define N 3
#define Y(n) ((N+1)*n)
A. 出错 B. 42 C. 48 D. 54
32. 假定x和y为double型,则表达式x=2,y=x+3/2的值是( )
A. 3.500000 B. 3 C. 2.000000 D. 3.000000
33. 执行下列程序片段时输出结果是( )
int x=13,y=5;
printf(“%d”,x%=(y/=2));
A. 3 B. 2 C. 1 D. 0
34. 当调用函数时,实参是一个数组名,则向函数传送的是( )
A. 数组的长度 B. 数组的首地址
C. 每个元素的地址 D. 每个元素的值
35. 以下程序段的循环次数是( )
for(i=2;i==0;)printf(“%d”,i--);
A. 无限次 B. 0次 C. 1次 D. 2次
36. 以下能对二维数组a进行正确初始化的语句是( )
A. int a[2][]={{1,0,1},{5,2,3}};
B. int a[][3]={{1,2,3},{4,5,6}};
C. int a[2][4]={{1,2,3},{4,5},{6}};
D. int a[][3]={{1,0,1},{},{1,1}};
37. 以下正确的函数定义是( )
A. double fun(int x, int y) B. double fun(int x,y)
{z=x+y;return z;} {int z;return z;}
C. fun(x,y) D. double fun(int x,int y)
{int x,y;double z ; { double z;
z=x+y;return z;} return z; }
38. 在宏定义#define PI 3.1415926中,用宏名PI代替一个( )