教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 综合文档 >

c语言复习题及参考答案(2)

来源:网络收集 时间:2026-08-23
导读: void main( ) {int x,y; scanf(―%d‖, y=x>12 ? x+10 : x-12; printf(―%d\\n‖,y); } A、0 B、2 C、3 D、4 9、if语句的基本形式是:if(表达式) 语句,以下关于―表达式‖值的叙述正确的是 。 A、必须是逻辑值 B、

void main( ) {int x,y; scanf(―%d‖,&x); y=x>12 ? x+10 : x-12; printf(―%d\\n‖,y); }

A、0 B、2 C、3 D、4

9、if语句的基本形式是:if(表达式) 语句,以下关于―表达式‖值的叙述正确的是 。 A、必须是逻辑值 B、必须是整数值 C、必须是正数 D、可以是任意合法的数值 10、有以下程序

#include void main( ) {int a=1,b=0; if(!a)

b++; else if(a==0)

if(a) b+=2; else b+=3;

printf(―%d\\n‖,b); }

程序运行后的输出结果是。 A、0 B、1 C、2 D、3

11、有以下程序,程序运行后的输出结果是 。

#include void main( ) {int c=0,k; for(k=1;k<3;k++) switch(k) {default:c+=k; case 2:c++;break; case 4:c+=2;break; }

printf(―%d\\n‖,c) }

A、3 B、5 C、7 D、9

12、有如下程序, 该程序的输出结果是_______。 void main( ) { int x=1,a=0,b=0; switch(x)

{ case 0: b++;

- 6 -

case 1: a++; case 2: a++;b++; }

printf(\\n\); }

A、a=2,b=1 B、a=1,b=1 C、a=1,b=0 D、a=2,b=2 13、 若运行时给变量x输入12,则以下程序的运行结果是_____。

void main() {int x,y;

scanf(\%d\

y=x>12?x+10:x-12; printf(\);}

A、0 B、10 C、12 D、22

14、若变量已正确定义,要将a和b中的数进行交换,下面不正确的语句组是_____。

A、a=a+b,b=a-b,a=a-b; B、t=a,a=b,b=t; C、a=t; t=b; b=a; D、t=b;b=a;a=t; 15、下面程序的运行结果是。

void main( ) {int x=4,y=5;

if ((x>y)&&(++x>0)) printf(―%d‖,x+y); printf(―%d‖,x); }

A、9 4 B、4 C、5 D、10 5 16、以下程序执行后的显示结果为 。 {int n=3 , m=6 ; if (n > 4 && m ++ < 10)

m++;

printf(―m = %d\\n‖,m); }

A、6 B、7 C、8 D、9 二、填空题。

1、执行if(x||!x) printf(‖ABC‖);else printf(‖XYZ‖);屏幕上显示的是______________。 2、执行下列语句后,显示结果为 。 x=0; if(x=0)

printf(―yes‖); else

printf(―no‖);

3、switch语句中,使用break语句,作用是 。 三、程序填空题

- 7 -

1、下面程序判断输入一个整数是否能被3或7整除,若能整除输出―YES‖,若不能整除,输出―NO‖。 void main( ) {int k;

printf(―请输入一个整数:‖); scanf(―%d‖,&k); if printf(―YES\\n‖); else

printf(―NO\\n‖); }

2、下列程序根据菜单选择完成相关操作。 void main() {int x,y,n;

printf(―请输入第一个整数:‖);scanf(―%d‖,&x); printf(―请输入第二个整数:‖);scanf(―%d‖,&y);

printf(―请输入你的选择1-加法、2-减法、3-乘法、4-除法scanf(―%d‖, ); switch(n)

{ case 1:printf(―和为:%d\\n‖,x+y);break; case 2:printf(―差为:%d\\n‖,x-y);break; case 3:printf(―积为:%d\\n‖,x*y);break; case 4:printf(―商为:%d\\n‖,x/y);break; :printf(―选择有误!\\n‖); } }

四、程序改错题

1、输入一个整数,判断其奇偶性。 #include void main( ) { int x;

printf(―请输入一个整数:‖); scanf(―%f‖,x); if(x%2=0)

printf(―是一个偶数!\\n‖);

else

printf(―是一个奇数!\\n‖);

}

( )改为:( ( )改为:(

- 8 -

‖); ) )

2、输入一个整数,判断其是否能被3整除。 #include void main( ) { int x,y;

printf(―请输入一个整数:‖); scanf(―%f‖,x); y=x%3; switch(y)

{ case 0:printf(―能被3整除!\\n‖); case 1,2:printf(―不能被3整除!\\n‖); } }

( )改为:( ) ( )改为:( ) ( )改为:( ) 五、编程题

1、编程:输入整数x,计算并输出下列分段函数f(x)的值。

y=

x 2x-1 3x-11

(x<1) (1<=x<10)

(x>=10)

2、编程:输入两个整数,再输入两个数相加的和,由程序判断输入的和是否正确。 3、编程:把百分制成绩转换成5级记分制,要求用switch语句。

90分以上(包括90): A 80至90分(包括80):B 70至80分(包括70):C 60至70分(包括60):D 60分以下:E 如:Input Score: 86 86的等级为B

4、用switch语句编程,输入2005年的任一个月,输出这个月的天数。

如:Input month of 2005: 10 2005年10月有31天

5 、给出一个不多于5位的正整数,要求:

(1)求出它是几位数; (2)分别输出每一位数字;

(3)按逆序输出各位数字,例如原数为321,应输出123

第五章

一、单项选择题

- 9 -

1、有如下程序,该程序的输出结果是_______。

void main( ) {int n=9;

while(n>6){n--; printf(\);} }

A、876 B、987 C、8765 D、9876 2、continue语句的正确的用法是 。

A、跳过该循环体中剩余的语句而强行开始下一次循环。 B、在多重循环中,只能退出最靠近的那一层循环语句。 C、跳出多重循环。

D、无论在任何情况下,都中断程序的执行,退出到系统下一层。 3、有以下程序段,则下面的描述正确的是 。 int k=0;

while(k=0) k=k-1;

A、while循环执行10次 B、循环是无限循环 C、循环体语句一次也不执行 D、循环体语句执行一次 4、C语言中whi1e和do-while循环的主要区别是___ __。 A、do-while的循环体至少无条件执行一次

B、while的循环控制条件比do-while的循环控制条件严格 C、do-while允许从外部转到循环体内 D、do-while的循环体不能是复合语句 5、有以下程序,则以下叙述正确的是_______。

int t=0; while (t=1) {...}

A、循环控制表达式的值为0 B、循环控制表达式的值为1 C、循环控制表达式不合法 D、以上说法都不对 6、语句 while(!E); 中的表达式 !E 等价于 ________。 A、E==0 B、E!=1 C、E!=0 D、E==1 7、下面程序段的运行结果是 _,循环次数为 。 int n=0; while(n++<=2);

printf(\

…… 此处隐藏:1574字,全部文档内容请下载后查看。喜欢就下载吧 ……
c语言复习题及参考答案(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/404309.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)