main()
{ int x,y=252,i=386,*m=&y,*z=&i;
x=(z==y);
printf(″%d″,x);
}
A.252 B.1 C.0 D.运行时出错,x无定值
【参考答案】C
41.下列程序的输出结果是( )
struct abc
{ int a,b,c,s;};
main()
{ struct abc s[2]={{1,2,3},{4,5,6}};int t;
t=s[0].a+s[1].b;
printf(″%d\n″,t);
}
A.5 B.6 C.7 D.8
【参考答案】Bwww.Examw.CoM
42.下列程序的运行结果是( )
void fun(int *a,int *b)
{int *k;
k=a;a=b;b=k;
}
main()
{int a=3,b=6,*x=&a,*y=&b;
fun(x,y);
printf(″%d %d″,a,b);
}
A.6 3 B.3 6 C.编译出错 D.0 0
【参考答案】B
43.若有下面的说明和定义,则sizeof(struct aa)的是值是( )
struct aa
{int r1;double r2;float r3;
union uu{char u1[5];long u2[2];}ua;
} mya;
A.30 B.29 C.24 D.22
【参考答案】D
44.以下选项中合法的用户标识符是( )
A.long B._2Test C.3Dmax D.A.dat
【参考答案】B
45.设x,y,t均为int型变量,执行下列语句后,y的值为( )
x=y=3;
t=++x||++y;
A.不确定 B.4 C.3 D.1
【参考答案】C
46.下列程序运行的结果是( )
main()
{
float x;
int i;
x=3.6;
i=(int)x;
printf(″x=%f,i=%d″,x,i);
}
A.x=3.600000,i=3 B.x=3.6,i=3
C.x=3,i=3 D.x=3.600000,i=3.000000
【参考答案】A
47.C语言中while和do-while循环的主要区别是( )
A.do-while的循环体至少无条件执行一次
B.while的循环控制条件比do-while的循环控制条件更严格
C.do-while允许从外部转到循环体内
D.do-while的循环体不能是复合语句
【参考答案】A
48.下面程序输出的结果是( )
main()
{
int i;
int a[3][3]={1,2,3,4,5,6,7,8,9};
for(i=0;i<3;i++)
printf(″%d″,a[2-i][i]);
}考试用书
A.1 5 9 B.7 5 3 C.3 5 7 D.5 9 1
【参考答案】B
49.下面函数的功能是( )
char *fun(char *strl,char*str2)
{
while((*str1)&&(*str2++=*str1++));
return str2;
}
A.求字符串的长度
B.比较两个字符串的大小
C.将字符串str1复制到字符串str2中
D.将字符串str1接续到字符串str2中
【参考答案】C
50.以下不能对二维数组a进行正确初始化的语句是( )
A.int a[2][3]={0};
B.int a[ ][3]={{1,2},{0}};
C.int a[2][3]={{1,2},{3,4},{5,6}};
D.int a[ ][3]={1,2,3,4,5,6};
【参考答案】C
二、填空题