B11、表达式strlen("hello")的值是______。
A.4 B.5 C.6 D.7
12、若二维数组a有m列,则在a[i][j]之前的元素个数为______。
A.j*m+i B.i*m+j C.i*m+j-1 D.i*m+j+1
13、下列程序段的输出结果是______。
#define f(a,b,x) a*x+b
printf("%d,%d\n",f(3,2,1),f(6,5,f(3,2,1)));
A.5,23 B.5,13 C.5,25 D.6,-11
14、下列程序段的输出结果是______。
int c[]={1,3,5}
int *k=c+1;
printf("%d",*++k);
A.3 B.5 C.4 D.6
C15、已知int a,*p=&a;,则为了得到变量a的值,下列错误的表达式是______。
A.*&p B.*p C.p[0] D.*&a
D16、下列程序段的输出结果是______。
#include <stdio.h>
int main()
{char *a[]={"abcd","ef","gh","ijk"};
int i;
for(i=0;i<4;i++)
printf("%c",*a[i]);
return 0;
}
A.aegi B.dfhk C.abcd D.abcdefghijk
17、以下正确的描述是______。
A.对共用体初始化时,只能用第一个成员类型的值进行初始化,每一瞬时起作用的成员是最后一次为其赋值的成员。
B.结构体可以比较,但不能将结构体类型作为函数返回值类型。
C.函数定义可以嵌套。
D.关键字typedef用于定义一种新的数据类型。
18、有以下程序段:
struct st{
int x;
int *y;
}*pt
int a[]={1,2},b[]={3,4};
struct st c[2]={10,a,20,b};
pt=c;
以下选项中表达式的值为11的是______。
A.*pt->y B.pt->x C.++pt->x D.(pt++)->x
D19、设有以下语句:
int a=1,b=2,c;
c=a^(b<<2);
执行后,c的值为______。
A.6 B.7 C.8 D.9
20、设fp为指向某二进制文件的指针,且已读到此文件的末尾,则函数feof(fp)的返回值为______。
A.EOF B.非0值 C.0 D.NULL