第四届ITAT大赛C语言预赛试题.docx
- 文档编号:29664169
- 上传时间:2023-07-26
- 格式:DOCX
- 页数:26
- 大小:22.88KB
第四届ITAT大赛C语言预赛试题.docx
《第四届ITAT大赛C语言预赛试题.docx》由会员分享,可在线阅读,更多相关《第四届ITAT大赛C语言预赛试题.docx(26页珍藏版)》请在冰豆网上搜索。
第四届ITAT大赛C语言预赛试题
第四届ITAT大赛C语言预赛试题+答案
一、单选题(共60小题,每题1分,共60分)
1.执行下列程序中的输出语句后,x的值是______.(知识点3.10)
main()
{intx;
printf(“%d\n”,(x=5*6,x*2,x+20));}
A)30B)60C)50D)80
2.下列程序的输出结果是_______.(知识点3.8)
main()
{intx=1,y=0,z;
z=(x<=0)&&(y-->=0);
printf(“%d%d%d%\n”,z,x,y);}
A)0-1-1B)0-10C)010D)01-1
3.在C语言中,下列选项属于合法的长整型常数的是_______.(知识点3.3)
A)0LB)1234567C)0.0234567D)3.14159e3
4.下列选项中属于不正确的赋值语句的是_____.(知识点3.6)
A)t++;B)n1=(n2=(n3=0));C)k=i==j;D)a=b,c=1;
5.若有定义:
inta,b;charx,y;并有以下输入数据:
1422XxYy(回车)
则能给a赋整数14,给b赋整数22,给x赋字符x,给y赋字符y的正确程序段是________.(知识点4.2)
A)scanf(“%d%d”,&a,&b);
x=getchar();y=getchar();
B)scanf(“%d%d%c%c”,&a,&b,&x,&x,&y,&y);
C)scanf(“%d%d%c%c%c%c”,&a,&b,&x,&x,&y,&y);
D)scanf(“%d%d%c%c”,&a,&b,&x,&y);
6.下列转义字符不正确的是_______.(知识点3.5)
A)'\\'B)'\'C)'\053'D)'\0'
7.下列选项可作为C语言赋值语句的是_______.(知识点4.2)
A)x=3,y=5B)a=b=6C)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.有以下程序:
main()
{unsignedinta;
intb=-1;
a=b;
printf(“%u”,a);}
该程序运行后的输出结果是_______.(知识点4.5)
A)-1B)65535C)32767D)-32768
10.若x、b、m、n均为int型变量,执行下面语句后b的值为_______.(知识点3.10)
m=20;n=6;
x=(--m==n++)?
--m:
++n;
b=m++;
A)11B)6C)19D)18
11.有以下程序:
main()
{inta=111,b=222;
printf(“%d\n”,a,b);
}
该程序运行后的输出结果是_______.(知识点4.5)
A)错误信息B)111C)222D)111,222
12.以下程序的输出结果是_______.(知识点4.5)
main()
{inta=2,c=5;
printf(“a=%%%d,b=%%%d\n”,a,c);}
A)a=%2,b=%5B)a=2,b=5C)a=%%%d,b=%%%dD)a=%%d,b=%%d
13.对于浮点型变量f,能实现对f中的值在小数点后第三位进行四舍五入的表达式是_______.(知识点3.8)
A)f=(f*100+0.5)/100.0B)f=(f*100+0.5)/100
C)f=(int)(f*100+0.5)/100.0D)f=(f/100+0.5)*100
14.设a=5,b=6,c=7,d=8,m=2,n=2,执行(m=a>b)&&(n=c>d)后m,n的值为______.(知识点5.2)
A)2,2B)2,0C)0,2D)0,0
15.语句printf(“%d\n”,strlen(“asd\n\x12\1\\”));的输出结果是______.(知识点7.3)
A)9B)11C)7D)8
16.有以下程序:
main()
{
inty=1234;
printf(“y=%6d”,y);
printf(“y=%+06d\n”,y);
}
该程序的运行结果是______.(知识点4.5)
A)y=1234y=001234B)y=1234y=+01234
C)y=1234y=+01234D)y=1234y=1234
17.语句:
printf(“%d”,!
9);的输出结果是______.(知识点5.2)
A)0B)1C)有语法错误,不能执行D)-9
18.已有定义语句:
intx=6,y=4,z=5;执行以下语句后,能正确表示x、y、z值的选项是______.(知识点5.3)
if(x A)x=4,y=5,z=6B)x=4,y=6,z=6 C)x=4,y=5,z=5D)x=5,y=6,z=4 19.下列选项中属于正确的switch语句的是______.(知识点5.4) A)switch(1.0)B)swicth (1) {case1.0: printf(“A\n”);{case1: printf(“A\n”); case2.0: printf(“B\n”);}case2: printf(“B\n”);} C)switch((int)(1.0+2.5))D)switch(“a”); {case1: printf(“A\n”);{case“a”: printf(“A\n”); case1+2: printf(“B\n”);}case“b”: printf(“B\n”);} 20.若k为int型变量,以下语句段执行后的输出结果是______.(知识点5.3) k=-3; if(k<=0)printf(“####”) elseprintf(“****”); A)####B)****C)####****D)有语法错误,不能执行 21.当a=2,b=3,c=4,d=5时,执行下面一段程序后x的值为_____.(知识点5.3) if(a>b) if(c else if(a if(b>d)x=2; elsex=3; elsex=4; elsex=5; A)2B)3C)4D)5 22.下列程序的运行结果是________.(知识点6.3) main() {inty=10; do{y--;}while(--y); printf(“%d\n”,y--);} A)-1B)1C)8D)0 23.下列程序的运行结果是________.(知识点6.5) #include main() { inti; for(i=1;i<=5;i++) {if(i%2)printf(“*”); elsecontinue; printf(“#”); } printf(“$\n”); } A)*#*#$B)#*#*#*$C)*#*#*#$D)***#$ 24.若x是int型变量,且有下面的程序片段: (知识点6.5) for(x=5;x<8;x++) printf((x%2)? (“**%d”): (“##%d\n”),x); 该程序片段的输出结果是_______. A)**5##6B)##5C)##5**6##7D)**5##6**7**7**6##7 25.有以下程序: main() {inta=1,b=0; switch(a) {case1: switch(b) {case0: printf(“****”);break; case1: printf(“####”);break;} case2: printf(“$$$$”);break;} 该程序的输出结果是________.(知识点5.4) A)****B)****$$$$C)****####$$$$D)####$$$$ 26.下列程序段的输出结果是_______.(知识点6.4) intx=3; do{printf(“%3d”,x-=2);} while(! (——x)); A)1B)30C)1-2D)死循环 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=0B)x=1,y=0C)x=1,y=1D)x=0,y=0 28.有以下程序段: intn=0,p; do{scanf(“%d”,&p);n++;}while(p! =12345&&n<3); 此处do-while循环的结束条件是_____.(知识点6.4) A)p的值不等于12345并且n的值大于3 B)p的值等于12345并且n的值大于等于3 C)p的值不等于12345或者n的值小于3 D)p的值等于12345或n的值大于等于3 29.在下述程序中,if(i>j)语句共执行的次数是_____.(知识点6.5) main() {inti=0,j=10,k=2,s=0; for(;;) {i+=k; if(i>j) {printf(“%d”,s); break; } s+=i; } } A)4B)7C)5D)6 30.以下程序的功能是: 按顺序读入10名学生和4门课程的成绩,计算出每位学生的平均分进行输出,但运行结果不正确。 main() {intn,k;floatscore,ave; ave=0.0; for(n=1;n<=10;n++) {for(k=1;k<=4;k++) {scanf(“%f”,&score); ave+=score/4;} printf(“NO%d: %f\n”,n,ave);} }造成程序计算结果错误的语句行是_____.(知识点6.6) A)ave=0.0;B)for(n=1;n<=10;n++) C)ave+=score/4;D)printf(“NO%d: %f\n”,n,ave); 31.若有以下定义: chars[10]={'a','b','c','0','\0','2','\x32','\0'};执行语句printf(“%d”,strlen(s));的结果是_____.(知识点7.3) A)3B)4C)8D)10 32.设有数组定义: chararray[]=“abcdef”;则数组array所占的空间为_____.(知识点7.3) A)4个字节B)5个字节C)6个字节D)7个字节 33.有以下程序: main() {charstr[][10]={“China”,“Beijing”},*p=str; printf(“%s\n”,p+10);} 该程序运行后的输出结果是_____.(知识点10.4) A)ChinaB)BeijingC)ngD)ing 34.阅读下面程序,该程序段的功能是_____.(知识点7.1) #include main() {intc[]={23,1,56,234,7,0,34},i,j,t; for(i=1;i<7;i++) {t=c[i];j=i-1; while(j>=0&&t>c[j]){c[j+1]=c[j];j--;} c[j+1]=t;} for(i=0;i<7;i++)printf(“%d”,c[i]); putchar('\n'); } A)对数组元素的升序排列B)对数组元素的降序排列 C)对数组元素的倒序排列D)对数组元素的随机排列 35.下列程序的输出结果是_____.(知识点7.2) main() {intn[3][3],i,j; for(i=0;i<3;i++) for(j=0;j<3;j++)n[i][j]=i+j; for(i=0;i<2;i++) for(j=0;j<2;j++)n[i+1][j+1]+=n[i][j]; printf(“%d\n”,n[i][j]); } A)14B)0C)6D)值不确定 36.下列函数调用语句中含有______个参数。 (知识点8.3) func((f1,f2),(f2,f3,f4),f5) A)3B)4C)5D)6 37.下列程序的运行结果是_______.(知识点7.3) #include main() {char*p1,*p2,ch[20]=“ABCDEFabcdef”; p1=“1234”;p2=“abcd”; strcpy(ch+1,p2+1);strcpy(ch+3,p1+3); pintf(“%s\n”,ch);} A)Abc4EFabcdeB)Abc4EFC)AbcdEFD)Abc4 38.下列程序的运行结果是_______.(知识点8.6) #include intf(inta) {switch(a) {case0: return0; case1: case2: return1; } return(f(a-2)+f(a-3)); } main() {intb; b=f(10); printf(“b=%d\n”,b); } A)12B)10C)9D)8 39.有以下程序: fun(intn) {if(n==1||n==2)return2; returns=n-fun(n-2);} main() {printf(“%d\n”,fun(7));} 该程序运行后的输出结果是_____.(知识点8.6) A)1B)2C)3D)4 40.下列程序中函数sort的功能是对a数组中的数据进行由大到小的排序: voidsort(inta[],intn) {inti,j,t;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第四 ITAT 大赛 语言 预赛 试题
![提示](https://static.bdocx.com/images/bang_tan.gif)