文档介绍:一、选择题
1、以下程序段的输出结果是:()
intx=17,y=3,z;printf(“%dn”,z=(x=x/y,x%y));
A)3B)0C)2D)1
2、以下if语句语法正确的是:()
A)if(x>0)B)if(x>0)
printf("%f",x){x=x+y;printf("%f",x);}
elseprintf("%f",-x);elseprintf("%f",-x);
C)if(x>0)D)if(x>0)
{x=x+y;printf("%f",x);};{x=x+y;printf("%f",x)}
elseprintf("%f",-x);elseprintf("%f",-x);
3、下面程序段的运行结果是:()
inta=1,b=2,c=2,t;
while(a<b<c){t=a;a=b;b=t;c--;}printf("%d,%d,%d\n",a,b,c);
A)1,2,0B)2,1,0C)1,2,1D)2,1,1
4、若m为整型变量,则以下循环执行次数是:()
for(m=2;m==0;)printf("%d",m--);
A)无限次B)0次C)1次D)2次
5、在C语言中,以下正确的说法是:()
A)实际参数与其对应的形式参数各占用独立的存储单元
B)实际参数与其对应的形式参数占用同一个存储单元
C)只有当实际参数和与其对应的形式参数同名时才占用同一个存储单元
D)形式参数是虚设的,不占用存储单元
6、以下程序的输出结果为()
main()
{inti,k,a[10],p[3];k=5;
for(i=0;i<10;i++)a[i]=i;
for(i=0;i<3;i++)p[i]=a[i*(i+1)];
for(i=0;i<3;i++)k+=p[i]*2;
printf(“%dn”,k);}
A)20B)21C)22D)23
7、以下程序的输出结果为:()
charstr[]="ab\n\012\\\"";printf("%d",strlen(str));
A)3B)4C)6D)12
8、以下程序的输出结果是:()
main()
{intn[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;
for(i=1;i<3;i++)for(j=0;j<=i;j++)s+=a[i][j];
printf("%d\n",s);
}
A)18B)19C)20D)21
9、设有以下宏定义:()
#defineN3
#defineY(n)((N+1)*n)
则执行语句:z=2*(N+Y(5+1));后,z的值为:
A)出错B)42C)48D)54
10、下列程序执行后输出的结果为:()
f(inta)
{staticintb,c=3;a=b;b=++c;return(a);}
main()
{inta=2,j,k;for(j=0;j<2;j++)k=f(a);printf(“%dn”,k);}
A)4B)0C)6D)5
11、下列程序语句的输出是:()
intn=0;
while(n++<=2);printf("%d",n);
(A)2(B)3(C)4(D)有语法错误
12、下列程序语句的输出是:()
inta=011;printf("%d\n",++a);
(A)12(B)11(C)10(D)9
13、执行语句for(i=1;i++<4;);后,变量i的值是:()
(A)3(B)4(C)5(D)不确定
14、定义intx=0,y=8,z=9后,则下面表达式的值为0的是:()
(A)'x'&&'y'(B)x<=y(C)x||y+z&&y-z(D)!((x<y)&&!z||1)
15、对下述程序段描述正确的是:()
intk=0;while(k=1)k++;
A)有语法错误,不能执行B)循环是无限的
C)循环体语句一次也不能执行D)循环体语句执行一次
16、下述程序的运行结果是:()
#include""
main()
{inti;
for(i=1;i<=5;i++)
{if(i%2)printf("*");
elsecontinue;
printf("#");
}
printf("$\n");
}
(A)*#*#*#$(B)#*#*#*$(C)*#*#$(D)#*#*$
17、下述程序的输出结果是:()
#include""
intx;
voidfun();
voidmain()
{intx=1;
if(x==1){intx=2;printf("%d,",x++);}
{externin