1、053 D)07. 下列选项可作为C语言赋值语句的是_.(知识点4.2)A)x=3,y=5 B)a=b=6 C)i- -; D)y=int(x);8. 当c的值不为0时,下列选项中能正确将c的值赋给变量a、b的是_.(知识点5.2)A)c=b=a; B)(a=c)(b=c); C)(a=c)&(b=c); D)a=c=b;9. 有以下程序: unsigned int a ;int b=-1;a=b;printf(“%u”,a);该程序运行后的输出结果是_.(知识点4.5)A)-1 B)65535 C)32767 D)-3276810. 若x、b、m、n均为int型变量,执行下面语句后b的值为_
2、.(知识点3.10)m=20;n=6;x=(- -m= =n+)?- -m:+n;b=m+;A)11 B)6 C)19 D)1811. 有以下程序: int a=111,b=222;printf(“%dn”,a,b);A)错误信息 B)111 C)222 D)111,22212. 以下程序的输出结果是_.(知识点4.5) int a=2,c=5;printf(“a=%d,b=%dn”,a,c);A) a=%2,b=%5 B) a=2,b=5 C) a=%d,b=%d D) a=%d,b=%d13. 对于浮点型变量f,能实现对f中的值在小数点后第三位进行四舍五入的表达式是_.(知识点3.8)A)
3、f=(f*100+0.5)/100.0 B)f=(f*100+0.5)/100C)f=(int)(f*100+0.5)/100.0 D)f=(f/100+0.5)*10014. 设 a=5, b=6, c=7, d=8, m=2, n=2, 执行(m=ab)&(n=cd) 后m,n的值为_.(知识点5.2)A) 2,2 B) 2,0 C) 0,2 D) 0,015. 语句printf(“%dn”,strlen(“asdnx121”);的输出结果是_.(知识点7.3)A) 9 B) 11 C) 7 D) 816. 有以下程序:main( )int y=1234;printf(“y=%6d”,y)
4、;printf(“y=%+06dn”,y);该程序的运行结果是_.(知识点4.5)A) y= 1234y=001234 B) y= 1234y=+01234C) y=1234y=+01234 D) y= 1234y=123417. 语句:printf(“%d”, !9);的输出结果是_.(知识点5.2)A) 0 B) 1 C) 有语法错误 ,不能执行 D) -918. 已有定义语句:int x=6,y=4,z=5;执行以下语句后,能正确表示x、y、z值的选项是_.(知识点5.3)if(xy)z=x;x=y ;y=z;A) x=4,y=5,z=6 B) x=4,y=6,z=6C) x=4,y=5
5、,z=5 D) x=5,y=6,z=419. 下列选项中属于正确的switch语句的是_.(知识点5.4)A)switch(1.0) B)swicth(1) case 1.0 :printf(“An”); case 1 :case 2.0 :printf(“Bn”); case 2 :C)switch(int)(1.0+2.5) D)switch(“a”); case 1 : case “a” :case 1+2 : case “b” :20. 若k为int型变量,以下语句段执行后的输出结果是_.(知识点5.3)k=-3;if(kb)if(cd)x=1 ;elseif(ad)x=2 ;else
6、 x=3 ;else x=4 ;else x=5 ;A)2 B)3 C)4 D)522. 下列程序的运行结果是_.(知识点6.3) int y=10;do y- - ; while(- -y);printf(“%dn”,y- -);A)-1 B)1 C)8 D)023. 下列程序的运行结果是_.(知识点6.5)# include int i ;for(i=1;i=5;i+) if(i %2)printf(“*”);else continue ;printf(“#”);printf(“$n”);A)*#*#$ B)#*#*#*$ C)*#*#*#$ D)*#$24. 若x是int型变量,且有下面
7、的程序片段: (知识点6.5)for(x=5;x8;x+)printf(x%2)?(“*%d”):(“#%dn”),x);该程序片段的输出结果是 _.A)*5#6 B)#5 C)#5*6#7 D)*5#6*7 *7 *6#725. 有以下程序:int a=1,b=0;switch(a) case 1:switch(b) case 0:printf(“*”);break ;case 1:printf(“#”); case 2: printf(“$”);该程序的输出结果是_.(知识点5.4)A)* B)*$ C)*#$ D) #$26. 下列程序段的输出结果是_.(知识点6.4)int x=3;d
8、o printf(“%3d”,x-=2);while(!(x);A)1 B)3 0 C)1 -2 D)死循环27. 有以下程序,其中x、y为整型变量;for(x=0,y=0;(x=1)&(y=1);x+,y);printf(“x=%d,y=%d”,x,y);该程序的输出结果是_.(知识点6.5)A)x=2,y=0 B) x=1,y=0 C) x=1,y=1 D) x=0,y=028. 有以下程序段:int n=0,p;do scanf(“%d”,&p);n+; while(p!=12345&nj) 语句共执行的次数是_.(知识点6.5) int i=0,j=10,k=2,s=0;for(;)
9、i+= k ;if(ij) printf(“%d”,s);break ;s+=i ;A)4 B)7 C)5 D)630. 以下程序的功能是:按顺序读入10名学生和4门课程的成绩,计算出每位学生的平均分进行输出,但运行结果不正确。 int n,k;float score,ave;ave=0.0;for(n=1;=10;n+) for(k=1;k=4;k+) scanf(“%f”,&score);ave+=score/4 ;printf(“NO%d:%fn”,n,ave);造成程序计算结果错误的语句行是_.(知识点6.6)A)ave=0.0; B)for(n=1;C)ave+=score/4 ;
10、D)printf(“NO%d:31. 若有以下定义:char s10=a,bc02x32;执行语句printf(“%d”,strlen(s);的结果是_.(知识点7.3)A)3 B)4 C)8 D)1032. 设有数组定义:char array =“abcdef”;则数组array所占的空间为_.(知识点7.3)A)4个字节 B)5个字节 C)6个字节 D)7个字节33. 有以下程序: char str 10=“China”,“Beijing”,*p=str;printf(“%sn”,p+10);该程序运行后的输出结果是_.(知识点10.4)A)China B)Beijing C)ng D)i
11、ng34. 阅读下面程序,该程序段的功能是_.(知识点7.1)#include =0&tcj) cj+1=cj;j- - ;cj+1=t;for(i=0;i+)printf(“%d ”,ci );putchar(n);A)对数组元素的升序排列 B)对数组元素的降序排列C)对数组元素的倒序排列 D)对数组元素的随机排列35. 下列程序的输出结果是_.(知识点7.2) int n33,i,j;3;for(j=0;j char *p1,*p2,ch20=“ABCDEFabcdef”;p1=“1234”;p2=“abcd”;strcpy(ch+1,p2+1);strcpy(ch+3,p1+3);pin
12、tf(“%sn”,ch);A)Abc4EFabcde B)Abc4EF C)AbcdEF D)Abc438. 下列程序的运行结果是_.(知识点8.6)int f(int a) switch (a)return 0;case 2:return 1;return(f(a-2)+f(a-3); int b;b=f(10);printf(“b=%dn”,b);A) 12 B)10 C)9 D)839. 有以下程序:fun(int n) if(n= =1| n= =2)return 2;return s=n-fun(n-2);printf(“%dn”,fun(7);该程序运行后的输出结果是_.(知识点8
13、.6)A) 1 B)2 C)3 D)440. 下列程序中函数sort的功能是对a数组中的数据进行由大到小的排序:void sort(int a ,int n) int i,j,t;n-1;for(j=i+1;n;j+)if(ain,p3.m-n); A)1,2 B)1,3 C)2,0 D)程序出错55. 下列程序的输出结果是_.(知识点11.6)struct st int x;int *y;*p;int dt4=10,20,30,40;struct st aa4=50,&dt0,60,&dt1,70,&dt2,80,&dt3; p=aa;printf(“%d ”,+p-x);printf(“%d ”,(+p)-printf(“%d ”,+(*p-y);A)10 20 20 B)50 60 21 C)51 60 21 D)60 70 3156. 字符0的ASCII码的十进制数为48,且数组的第0个元素在低位,则以下程序的执