C语言复习60题.docx
- 文档编号:6825690
- 上传时间:2023-01-10
- 格式:DOCX
- 页数:10
- 大小:18.96KB
C语言复习60题.docx
《C语言复习60题.docx》由会员分享,可在线阅读,更多相关《C语言复习60题.docx(10页珍藏版)》请在冰豆网上搜索。
C语言复习60题
01计算机本身最擅长的能力是?
A.推理B.想像C.重复D.分析正确答案:
C、重复。
02计算机(CPU)可以直接运行人类编写的程序
A.√B.×正确答案:
B、×。
03编程语言是和计算机交谈的语言
A.√B.×正确答案:
B、×。
04关于C语言,以下说法错误的有:
A.C语言是和Unix操作系统一同发展起来的
B.C语言不能写图形界面的软件
C.C语言一般是编译执行的
D.C语言诞生于1970年代
正确答案:
B、C语言不能写图形界面的软件。
06IDE的中文翻译是什么?
正确答案是:
集成开发环境。
07给定:
inta,b;以下哪些scanf的使用是正确的?
A.scanf("%d",&a);scanf("%d",&b);
B.scanf("%d%d",&a,&b);C.scanf("%d,%d",&a,&b);D.scanf("%d%d",a,b);
正确答案:
A、scanf("%d",&a);scanf("%d",&b);。
B、scanf("%d%d",&a,&b);。
C、scanf("%d,%d",&a,&b);。
08以下哪些是有效的变量名?
A.mainB.4everC.monkey-kingD.__int正确答案:
A、main。
D、__int。
09给定:
inta,b;scanf("%d%d",&a,&b);
则以下哪些输入方式是正确的?
A.12B.1,2C.1(回车)2D.1、2正确答案:
A、12。
C、1(回车)2。
10给定以下代码段:
inta,b=0;
则a的初始值是0
A.√B.×正确答案:
B、×。
11写出下式的运算结果:
10/3.0*3正确答案是:
10.0。
12写出下式的运算结果:
10/3*3.0
正确答案是:
9.0。
13写出以下代码执行后,t1和t2的值,以空格隔开:
inta=14;
intt1=a++;
intt2=++a;
正确答案是:
1416。
14写出以下表达式的结果,一个结果一行:
6+5/4-2
2+2*(2*2-2)%2/3
10+9*((8+7)%6)+5*4%3*2+3
1+2+(3+4)*((5*6%7/8)-9)*10
正确答案是:
5244-627。
15以下语句是否可以通过编译:
if(1<=n<=10);
A.√B.×正确答案:
A、√。
16以下语句是否表示n属于[1,10]:
if(1<=n<=10);
A.√B.×正确答案:
B、×。
17写出程序的输出结果:
inti,j,k;
i=5;j=10;k=1;
printf("%d",k>i 正确答案是: 1。 18写出程序的输出结果: inti,j,k; i=2;j=3; k=i*j==6; printf("%d\n",k); 正确答案是: 1。 19写出程序的输出结果: inti,j,k; i=3;j=2;k=1; printf("%d",i 正确答案是: 1。 20写出程序的输出: inti=1; switch(i%3){ case0: printf("zero"); case1: printf("one"); case2: printf("two"); } 正确答案是: onetwo。 21写出程序的输出: inta=58; if(a>50)printf("A"); if(a>40)printf("B"); if(a>30)printf("C"); 正确答案是: ABC。 22while循环的条件满足的时候循环继续,而do-while的条件满足的时候循环就结束了 A.√B.×正确答案: B、×。 23以下代码片段执行结束后,变量i的值是多少? inti=10; while(i>0){ i/=2; } 正确答案是: 0。 24以下代码片段执行结束后,变量i的值是多少? inti=1; do{ i+=5; }while(i<17); 正确答案是: 21。 25以下哪种运算能从变量x中取得十进制最低位的数字 A.x/10B.x%10C.x*10D.10/x 正确答案: B、x%10。 26当需要累加一些值的时候,用来记录累加结果的变量应该被初始为: 正确答案是: 0。 27以下哪个循环和其他三条循环不等价(假设循环体都是一样的)? A.for(i=0;i<10;i++){...} B.for(i=0;i<10;++i){...} C.for(i=0;i++<10;){...} D.for(i=0;i<=9;i++){...} 正确答案: C、for(i=0;i++<10;){...}。 28以下代码段的输出是什么? for(inti=10;i>1;i/=2){ printf("%d",i++); } 正确答案是: 10532。 29以下代码段的输出是: intsum=0; for(inti=0;i<10;i++){ if(i%2)continue; sum+=i; } printf("%d\n",sum); 正确答案是: 20。 30以下代码段的输出是: intsum=0; for(inti=0;i<10;i++){ if(i%2)break; sum+=i; } printf("%d\n",sum); 正确答案是: 0。 31以下哪个数字占据的空间最大? A.32768B.‘3‘C.32768.0D.32768.0F 正确答案: C、32768.0。 32以下哪个字母不能在数字后面表示类型? A.FB.UC.LD.X 正确答案: D、X。 33以下哪个数字的值最大? A.10B.010C.0x10D.10.0正确答案: C、0x10。 34以下哪种类型不能用在switch-case的判断变量中: A.charB.shortC.intD.double正确答案: D、double。 35下列哪些是有效的字符? A.‘’ B.‘\’‘ C.'' D.'\' 正确答案: A、‘’。 B、‘\’‘。 C、''。 36以下表达式的结果是: '1'+3 正确答案是: 52或'4'。 37以下哪个表达式的结果是true? A.! (4<5) B.2>2||4==4&&1<0 C.34==33&&! false D.! false 正确答案: D、! false。 38以下哪个表达式,当a和b中只有一个是true的时候结果为true,而如果两个都是false或都是true的时候,结果为false A.a&&b B.a||b C.a! =b D.! a&&! b 正确答案: C、a! =b。 39以下哪个表达式,当a和b都是true或者都是false的时候,表达式的结果为true。 A.a&&b B.a||b C.a==b D.a^b 正确答案: C、a==b。 40以下哪个表达式与! (a&&b)是等价的 A.! a&&! bB.! a||! bC.a&&bD.a||b正确答案: B、! a||! b。 41以下代码执行后,i的值是: i=3/2,3*2;正确答案是: 1。 42以下哪句不是正确的原型? A.intf();B.intf(inti);C.intf(int);D.intf(inti){}正确答案: D、intf(inti){}。 43以下哪个函数的定义是错误的? A.voidf(){} B.voidf(inti){returni+1;} C.voidf(inti){} D.intf(){return0;} 正确答案: B、voidf(inti){returni+1;}。 44对于不返回值而且只有一个int类型的参数的函数,以下哪些函数原型是正确的? A.voidf(intx);B.voidf();C.voidf(int);D.voidf(x); 正确答案: A、voidf(intx);。 B、voidf();。 C、voidf(int);。 45以下程序的输出是什么? #include voidswap(inta,intb); intmain() { inta=5; intb=6; swap(a,b); printf("%d-%d\n",a,b); return0; } voidswap(inta,intb) { intt=a; a=b; b=t; } 正确答案是: 5-6。 46若有定义: inta[2][3]; 则以下选项中不越界的正确的访问有: A.a[2][0]B.a[2][3]C.a[1>2][0] D.a[0][3] 正确答案: C、a[1>2][0]。 47以下程序片段的输出结果是: intm[][3]={1,4,7,2,5,8,3,6,9,}; inti,j,k=2; for(i=0;i<3;i++){ printf("%d",m[k][i]); } A.369 B.不能通过编译 C.789 D.能编译,但是运行时数组下标越界了 正确答案: A、369。 48假设int类型变量占用4个字节,定义数组 intx[10]={0,2,4}; 则x在内存中占据几个字节? 正确答案是: 40。 49若有: inta[][3]={{0},{1},{2}}; 则a[1][2]的值是? 正确答案是: 0。 50对于: inta[]={5,15,34,54,14,2,52,72}; int*p=&a[5]; 则: p[-2]的值是? A.编译出错,因为数组下标越界了 B.运行出错,因为数组下标越界了 C.54 D.2 正确答案: C、54。 51如果: inta[]={0}; int*p=a; 则以下哪些表达式的结果为真? A.p==a[0] B.p==&a[0] C.*p==a[0] D.p[0]==a[0] 正确答案: B、p==&a[0]。 C、*p==a[0]。 D、p[0]==a[0]。 52以下变量定义: int*p,q; 中,p和q都是指针。 A.√B.×正确答案: B、×。 53对于: inta[]={5,15,34,54,14,2,52,72}; int*p=&a[1]; 则: p[2]的值是? 正确答案是: 54。 54对于以下代码段,正确的说法是: char*p; while (1){ p=malloc (1); *p=0; } A.最终程序会因为没有没有空间了而退出 B.最终程序会因为向0地址写入而退出 C.程序会一直运行下去 D.程序不能被编译 正确答案: B、最终程序会因为向0地址写入而退出 55对于以下代码段: inta[]={1,2,3,4,5,}; int*p=a; int*q=&a[5]; printf("%d",q-p); 当sizeof(int)为4时,以下说法正确的是: A.因为第三行的错误不能编译B.因为第三行的错误运行时崩溃C.输出5D.输出20 正确答案: C、输出5。 56使用malloc就可以做出运行时可以随时改变大小的数组 A.√B.× 正确答案: B、×。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 复习 60