2022年C语言程序设计教程第三章练习题题目_第1页
2022年C语言程序设计教程第三章练习题题目_第2页
2022年C语言程序设计教程第三章练习题题目_第3页
2022年C语言程序设计教程第三章练习题题目_第4页
2022年C语言程序设计教程第三章练习题题目_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、C 语言程序设计教程第 三章练习题题目-CAL-FENGHAI-2022YEAR-YICAIE. 单项丿lx 如定义 a=3,b=4,执行 printf ( “d, d”同(b,a) ;的输出结果为 () ;A3, 4 B. 4, 3 C. 3, 3 D.4, 4 2、假如要求在 if 后的判定条件是a 不等于 0,就以下选项中能正确表达这一关系的是();A. aoO B. .a C. a=0 D. a 3、为了防止嵌套的 if-else 语句的二义性, C 语言规定 else 总是与()组成配对 关系;A. 缩排位置相同的讦 B. 在其之前未配对的讦 C. 在其之前尚未配对的最近的讦 D.

2、同一行上的讦 4、有定义 intt = 0; 就有循环 while(t=l)*, 就以下关于 while 循环语句的描述中 正 确的是();A.循环掌握表达式的值为10B .循环掌握表达式的值为C. 循环掌握表达式的值不合法 D. 以上说法都不对 5.、如有定义: intx,i;就以下 for 循环语句:for(i = 0,x = 0; i 5 printf d“,x;else A. 7 和 5 printf“n“,x B. 6 和 3 C. 7 和 4 D. 6 和 4 6 和 4,那么输出结果是10、 运行以下程序后, 假如从键盘上输入 china#,那么输出结果为 ;#include v

3、oid main int vl=0,v2=0; char ch; while ch=getchar.=1#1 switch ch case a1: case h1: default: vl+; case 01: v2+; n”V/2;printf“A. 2,0 B. 5,0 C. 5,5 D. 2Z5 311.有如下程序:void main int x=l,a=O,b=O; switchx case 0: b+; case 1: a+; case 2: a+; b+; printfl,a=%d,b=%dnI,a,b; 该程序的输出结果是 ;A. a=2,b=l B. a=l,b=l C. a=

4、l,b=0 D. a=2/b=2 12.、下面程序的输出是 ;void main char *a=,l12134211,1; int vl=0/v2=0,v3=0/v4=0,k; for k=O;sk;k+ switch skj default: v4+; case 1: vl+; case 31: v3+; case 2: v2+; printfI,vl=%d/v2=%d/v3=%d/v4=%dn,/vl,v2/v3/v4; A. vl=4,v2=2,v3=l,v4=l B. vl 二 4,v2=9,v3=3,v4=l C. vl=5/V2=8,v3=6,v4=l D.vl=8,v2=8,v

5、3=8,v4=8 13.、以下程序段的输出结果为 ; int y=l; whiley-; 4printfy=%dn,y; A. y=-1 B. y=O c.死循环 D.y=9 14、?当输入数据: 27 63 时,下面程序的运行结果是 ;#include int gbsint a, int b int c; a=aOa:-a; b=bOb:-b; c=a*b; if c=0 return 0; while a.=b if ab a-=b; else b-=a; return c/a; int gysint a, int b 讦a*b=0 return 0; a=a0a:-a; b=b0b:-b

6、; while a.=b if ab a-=b; else b-=a; return a; void main int a,b,c,d; scanf,%d%d,&a,&b; c=gbsa,b; d=gysa/b; pnntfa=%d b=%d gbs=%d gys=%dn,a,b,c,d; A. a=30 b=63 gbs=189 gys=9 B. a=27 b=63 gbs=190 gys=10 C. a=27 b=63 gbs=189 gys=9 5D. a=27 b=63 gbs=188 gys=10 15、 假设有程序段 : int k=0; whilek=l k+; while 语句

7、的循环次数是 ;A.无限次 B.有语法错,不能执行 C. 一次也不执行 D. 执行 1 次 16、 ?执行下面程序片段的结果是 ;int x=23; do printfl,%2d,l/x; while .x; A. 打印出 321 B. 打印出 23 C. 不打印任何内容 D.陷入死循环17、 在 C语言程序中,如期望终止循环,就do-while 语句构成的循环中的条件为 ;A. 0 B. 1 C. true D. 非 18、 以下描述中正确选项 ;A. do-while 语句构成的循环不能用其它语句构成的循环来代替 break 语句退出 B. do-while 语句构成的循环只能用C. 用

8、do-while 语句构成的循环,在 D. 用 do-while 语句构成的循环,在while 后的表达式为非零时终止循环 while 后的表达式为零时终止循环19、 ?以下循环体的执行次数是 ;void main int ij ;for i=O,j=l; i=j+l; i+=2,j printf%dn /i; A. 3 B. 2 C. l D. O 20、 ?有如下程序:void main int i,sum; fori=l;i8; y=+i printf%d %d , x-z y; A. 10 192 B. 9 8 7 6 C. 109 9 0 D. 10 10 9 1 22、 以下说法中

9、正确选项 ;A. 在 switch 语句中肯定要使用 break 语句B. 在 switch 语句中不肯定要使用 break 语句C. break 语句是 switch 语句的一部分D. break 只能用于 switch 语句中23.、执行下面的程序后,a 的值为 ; void main int a,b; for a=l,b=l; a=20 break; 讦b%3=l b+=3; continue; b-=5;7A. 7 B. 8 C. 9 D. 10 24、?如有以下程序段,w 和 k 都是整型变量:w=k;LB: 讦w=0 go to LE; w-; printfC1*; goto LB

10、; LE: 那么不能与上面程序段等价的循环语句是 A. for w=k; w.=0; w- printf,*n; ;B. for w=k; w; 一 w printf w ; C. w=k; while w- .= 0 printf,*n; w+; D. w=k; do w; printf,*,; while w.=0; 多项丿1、C语言的程序结构语句包括();A.次序结构语句 B.循环结构语句 C.选择结构语句 D.规律结构语句2 以下语句哪些属于循环语句();A.for 语句 B.do-while 语句 C.while 语句D.switch 语句判定题1、break 是跳出当前循环,接着执

11、行循环后面的代码;2 continue 只能用于循环语句;3、 break 语句只能在循环语句中使用;4、 在 C 语言中,跳转语句有break 语句、 goto 语句和 continue 语句;8简答丿1、?请阅读下面的程序,分析程序是否能编绎通过并正确运行,假如不能,说 明缘由;假如能,请写出运行结果;void main int a,b,d=241; a=d/100%9; b=-l&-l; printf%d,%H,a,b; 2.、请阅读下面的程序,在空口处填写正确的代码,要求输出 开头;void main int m = 10, n = 20; printf ,m; Printf ,n;

12、m 和 n 的值,且每 彳丁从头3、?请阅读下面的程序,分析程序是否能编绎通过并正确运行,假如不能,说 明缘由;假如能,请写出运行结果;void main int x = l,y = 1, z = 10; ifz0 x = 3; else x = 5; printf%dt,x; 讦z = y 0 x = 3; else ify=O x = 5; else x = 7; printf%dt , x; printf%dt,z; 4.、请阅读下面的程序,在空口处填写正确的代码,实现分段函数:x 0 y = x+7/3; 输入 X,运算 y 值,输出 y;void main int x, y;scan

13、f%d&x; ifx 0 y = x + 7 / 3; printf %d,y; 5.、请阅读下面的程序,分析程序是否能编绎通过并正确运行,假如不能,说 明缘由;如 果能,请写岀运行结果;void main char ch = switchch case 7V:printfit isAn ;case .:printfit is Bn; case V:printfzzit is Cn ;default: printfothern; 6、?请阅读下面的程序,在空口处填写正确的代码,实现以下功能:投票表决器:- 输入 Y, y,打印 agree 输入 N, n,打印 disagree lose- 输

14、入其他,打印 void main char ch; scanf%c,&ch; case V: ; case V: printfagree; case N: case X; printf/zdisagree,/; ; ;printfloser; 7.、请阅读下面的程序,在空白处填写正确的代码,实现以下功能:查询同学身高的分布状况:H 175-200cm 30% M 160-175cm 40% L 150-160cm 30% void main char ch; scan f “d,&ch; :printf 4175-200cm 身高的同学占 n” ;; 10:printf 4160-175cm

15、身高的同学占 n” ;; :printf “-175cm 身高的同学占 n” ; default: printf 输入有误,请重新输入 . n” ; 8.、请阅读下面的程序,分析程序是否能编绎通过并正确运行,假如不能,说 明缘由;如 果能,请写岀运行结果;void main int num = 0; whilenum = 2 n um+; printf%drCnum; 9、?请阅读下面的程序,在空口处填写正确的代码,实现以下功能:输出 1-100 之间的偶数数:void main int num = 1, sum = 0; while num = 100 if sum += num; / pr

16、intfHsum = %dnl,/ sum; 10.请阅读下面的程序,分析程序是否能编绎通过并正确运行,假如不能,说 明缘由;如 果能,请写出运行结果;void main int num = 0; do n um+; printfdr Jnum; whilenum = 2; 11.请阅读下面的程序,在空口处填写正确的代码,实现以下功能:输出 1-100 之间的偶数数:11void main int num = 1, sum = 0; do if sum += num; / while num = 1; i m = m + 1 * 2; printfm = %dn / m; 13、 ?请阅读下面

17、的程序,在空口处填写正确的代码,实现以下功能:偶数和:求出 1-100 之间的void main int i, sum = 0; fori = 2; ; i+ 14、?请阅读下面的程序,分析程序是否能编绎通过并正确运行,假如不能,说 明缘由;假如能,请写岀运行结果;void main int i,j; for i = 0; i = 2; i+ for j = 0; j = i; j+ printf,l%d/%dn,/ ij; 15.、请阅读下面的程序,在空口处填写正确的代码,实现以下功能 : 打印以下图形:沐沐 *审 He 12 He He * He He fc * void main int

18、 i, j, k; ; i+ for i = 0; for j = 0; j = 2 - i; j+ printf ” ;for k = 0; ; k+ printfC*; 16、?请阅读下面的程序,在空口处填写正确的代码,实现以下功能: X Y Z + Y Z Z 5 3 2 void main int x, y, z, i, result = 532; for x = 1; ; x+ for y = 1; ; y+ for z = 0; z = 1; z+ i= +100*y+10*z + z; 讦i = result printfx = %d, y = %d, z = %dn, x, y

19、, z; 17、?请阅读下面的程序,分析程序是否能编绎通过并正确运行,假如不能,说 明缘由;假如能,请写出运行结果;void main int a, b; for a = 1, b = 1; a = 100; a+ 讦 bx 10 break; if b%3=l b += 3; 13continue; printfHa = %dnN, a; 18、?请阅读下面的程序,在空口处填写正确的代码,实现以下功能 : 用户键盘输入一个 数,判定是奇数仍是偶数 . void main int num; scanf,%cf, # 讦num % 2 = 0 / else epl: printf “ 输

20、入的是一个偶数!n ;ep2: printf 输入的是一个奇数!n ; 19、?请阅读下面的程序,分析运行结果;void main pnntf,nH; printfl,n,1; printfl,n,; printf”iV ; n” ; 20.、请阅读下面的程序,在空口处填写正确的代码,输出三个整数中最大的整 数;#include void main int a = 10, b = 40, c = 20, t = a; if t b else max=b; if maxc printf,max=%d,/ max; 23.、请阅读下面的程序,分析代码是否能够编译通过,假如能编译通过,请列 出运行的

21、结果,否就请说明编译失败的缘由;#include void main int x = 1, a = 0, b = 0; switch x case 0: b+; case 1: a+; case 2: a+; b+; printf,a=%d,b=%dn,z a, b; 1524.、请阅读下面的程序,分析代码是否能够编译通过,假如能编译通过,请列 出运行的结果,否就请说明编译失败的缘由;#inelude void main int x = 1, y = 0, a = 0z b = 0; switch x case 1: switch y case 0: a+; break; case 1: b+

22、; break; case 2: a+; b+; break; printfHa=%d, b=%dn,/ a, b; 25、?请阅读下面的程序,在空白处填写正确的代码,该程序的功能是:通过输 为成果评等级, 90100 为 A, 8089 为 B, 7079为 C, 6069为 D, 60 以下为 Eo入成果,#include void main int score; printfHPlease input your score:; scanffd, &score; switch case 10: case 9: pnntfHYour level is A.nu; break; case &

23、printfHYour level is B.nH; break; case 7: printfHYour level is C.nn; break; 16case 6: printfHYour level is D.nH; break; printfHYour level is E.nH; 26.、请阅读下面的程序,分析代码是否能够编译通过,假如能编译通过,请列 出运行的结果,否就请说明编译失败的缘由;#include void main int y=10; whiley-; printfy=%dn /y; 27、?请阅读下面的程序,在空口处填写正确的代码,该程序的功能是:运算并 输出以下

24、级数的前 N 项之和 SN,直到 SN大于 Q 为止;#include double fundouble q int n; double s; n = 2; s = 2.0; while s = s + doublen+l/n; printf,n=%dn,n; void main printf %fn 舄 fun50; 28、?请阅读下面的程序,在空口处填写正确的代码,该程序的功能是:从键盘 上输入一行字符 不多于 40 个,以回车换行符作为输入终止标记 其它字符不变,然后逆向输出;void main char a40; int n=0; do scanfCc, &an; 17, 将其中的 大

25、写字母改为小写字母,if _ an+=32; n+; while _ .= n ;n=n. 2; while n=0 printfc”, an-; 29.、请阅读下面的程序,在空口处填写正确的代码,该程序的功能是:连续向 数组输入成 绩,并显示数组元素的值,当输入负数时停止接收数据;void main int n; int c100; n=0; do printfHenter num:n; printfCdXncIn; n+; while _ ; 30.、请阅读下面的程序,分析该程序执行后会有什么错误或者成效;#in clude #define MAX 255 void main unsign

26、ed char AMAX, i; for i=0; i=MAX; i+ Ai=i; 31、?请阅读下面的程序,在空口处填写正确的代码,该程序的功能是:求 1J0 的奇数和;void main int x,s=O; s=0; for x=l; x=10; _ printfC1奇数和为: %dll/ s; 32、?请阅读下面的程序,在空口处填写正确的代码,该程序的功能是:运算 n. 的值;void main int i, s, n; printfHenter n:H; 18scanfcT,&n; for i=l; i=n; i+ printfl,s=%d,/s; 33.、请阅读下面的程序, 在空口

27、处填写正确的代码,和;void main int i,sum=O; for i=3; i=29; _ sum = _ ; printfI,sum=%dn,sum; 该程序的功能是: 求 s=3+5+7+.+29 之34.、请阅读下面的程序,在空口处填写正确的代码,该程序的功能是:输出 100 以内能被3 整除且个位数为 6 的全部整数;#in clude void main int ij; for i=0; _ ; i+ j=i*10+6; 讦j%3 .= 0 printfCd-J; 35.、请编写程序,从键盘输入一个数,实现对奇数和偶数的判定;提示:1定义一个 int 类型变量 x,从键盘输

28、入数据,调用scanf函数;, 否就输岀 “ X2使用讦 ; 山;语句对 x 进行判定, 假如是奇数就输出 “ x是一个奇数”是偶数” o36.、从键盘输入三个数 6 乞 G判定其中的最大值并输出;提示:1 从键盘输入数据,调用 scanf函数2 用 if.else if.else 语句判定三个数的最大值37.、编写程序,实现以下功能:输入一周中的某一天,查询这一天是工作日仍 是周末休息日;提示:查询某一天是工作日仍是休息日,一次执行一条指令,可以用switch 语句;38.、编写程序,实现以下功能:做一个值班查询表,周一至周六支配不同的 提示:1周一到周日需要键盘输入,调用scanf函数2多种情形的判定,用switch 语句人值夜班,周日不值班;39、?编写程序,实现一个能运行加减乘除的简洁的运算器;键盘输入表达式,依据加减乘除的符号给出相应的结果;提示:1 键盘输入表达式,依据加减乘除的符号给出相应的结果;192 多种判定情形可以用 switch 语句40.、编写程序,求 10 的阶乘 ; 提示:1 20 的阶乘是 1*2*3* *10 2 判定条件小于等于 10,可以用 while 循环41.、编写程序 , 实现对 “1+ 3+5+7+ +99的求和功能;提示:1使

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论