c语言复习题.docx
- 文档编号:14228066
- 上传时间:2023-06-21
- 格式:DOCX
- 页数:50
- 大小:52.32KB
c语言复习题.docx
《c语言复习题.docx》由会员分享,可在线阅读,更多相关《c语言复习题.docx(50页珍藏版)》请在冰点文库上搜索。
c语言复习题
模拟题一
一、单项选择题(每题2分,30分)
1.结构化程序设计方法中有三种基本结构,不正确的是____D_____。
A.顺序结构B.选择结构C.循环结构D.数组结构
2.在C语言中,下列变量名称中合法的是___C______。
A.7xB.intC.ELseD.a-b
3.合法的字符常量是_C___。
A.‘\084’B.‘ab’C.‘\x43’D.“\0”
4.下列变量的定义及赋值正确的是___C___。
A.inti=0;j;B.charc=”A”;
C.doublex,y,z;D.floata=b=100;
x=y=z=100;
5.如有以下变量定义:
inta=5,b=6,c=12;那么下列表达式结果为真的是____A_____。
A.a-bB.a>bC.b/cD.c%b
6.下列的数组定义中合法的是(A)
A.inta[]="string";B.inta[5]={0,1,2,3,4,5};
C.chars="string";D.chara[]={0,1,2,3,4,5};
7.下列循环语句中,不能够正常结束的是___C______。
A.inti=0;B.inti=0;
for(;i<100;i++);for(;;){if(i++>100)break;}
C.inti=0,j=0;D.inti=0,j=0;
while(i<=j)j++;do{i+=j;i++;j++;}while(i 8.若有: inta[]={1,2,3,4,5,6,7,8},*p=a;不能正确表示a[5]的表达式是____A____。 A.p+5B.p[5]C.*(a+5)D.*(p+5) 9.设有intx=15,y=20则表达式(x/=2+1,y*5),y+25的值和执行表达式后x、y的值分别是____B_____。 A.1258100B.45520C.1255100D.45820 10.以下程序运行后,输出结果是_____C____。 #include intb=1; intf() {intb=-5; returnb*b; } voidmain() {printf("%d,%d\n",b,f()); } A.-5,25B.1,1C.1,25D.1,1 11.以下程序运行后,输出结果是____D_____。 #include #defineS(a,b)a*b main() {inta=3,area; area=S(a,a+1); printf("area=%d\n",area); } A.15B.12C.9D.10 12.能正确表示a≥10或a≤0的关系表达式是__C__。 A.a>=10ora<=0B.a>=10│a<=0 C.a>=10||a<=0D.a≥10||a≤0 13.以下叙述中正确的是___D______。 A.主函数中定义的变量子函数可以使用 B.局部变量都是自动变量 C.只要是全局变量,所有函数都可以使用 D.不同位置定义的变量有效范围不一样 14.当a=1,b=3,c=5,d=4,x=3时,执行下面一段程序后,x的值为____A_____。 if(a if(c>d)x=1; elseif(a if(b>d)x=2; elsex=0; A.1B.2C.3D.0 15.现有一个文本文件,想以追加方式打开,下列方式正确的是___D_______。 if((fp=fopen("fname.dat","____"))==NULL) {printf("cannotopenfile! \n",num);exit(0);} A.wB.abC.bD.a 二.判断题: 本大题共10个小题,每小题1分,共10分。 1、函数既可以嵌套定义,也可以嵌套调用。 N 2、表达式i++表示对变量i自身加1。 Y 3、while语句的循环体至少执行一次。 N 4、函数的递归调用不过是一个函数直接或间接的调用自己。 Y 5、通过return语句可以带回一个或多个值。 N 6、字符串只能存放到字符型数组中。 Y 7、在标准C中“=”是判断2个数是否相等。 N 8、静态外部变量只能在本文件使用。 Y 9、C语言是一种结构化的程序设计语言。 Y 10、语句scanf(“%7.2f”,&x)是合法的。 N 三.填空题: 本大题共15个小题,每空2分,共30分。 1.下面程序的运行结果是4 #include voidmain() {inti=3; switch(i) {case1: printf("%d\n",i++);break; case2: printf("%d\n",i);break; case3: printf("%d\n",++i);break; default: printf("*\n"); } } 2.输入一个不超过3位的正整数,判断它是个几位数,weishu()是判断位数的函数,将程序补充完整。 #include intweishu(intx) {if(x/100>0) return(3); elseif(x%100/10>0) return (2); else return (1); } voidmain() {inta; do{scanf("%d",&a); printf("%d是%d位数\n",a,weishu(a)); }while(a! =0); } 3.计算100到188之间的所有奇数的平均值,将程序补充完整。 #include voidmain() {inti,j; floataverage=0,sum=0; for(i=101,i+=2;i<188;i+=2) {sum+=i;j++;} average=sum/j; printf("average=%.2f\n",average); } 4.判断数组中的整数是不是素数,将程序补充完整。 #include #include intprime(intn) {intflag=1,i; for(i=2;i if(n%i==0){flag=0;break;} returnflag; } voidmain() {inti,a[6]={3,7,9,11,10,6}; for(i=0;i<6;i++) if(prime(a[i]))printf("a[%d]=%d是素数\n",i,a[i]); } 5.下面程序的运行结果是258 #include intfun(intk) {staticintb=1; intm; b=b+1; m=k*2+b; returnm; } voidmain() {inti,s; for(i=0;i<=2;i++) {s=fun(i); printf("%d",s);/*%d前有空格*/ } printf("\n"); } 6.下面程序的运行结果是8,3 #include voidmain() {inta[10]={3,9,7,8,5,10,1,2,4,6},*p;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 复习题