




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
专业 班级 学号 姓名 提示:平时作业当考试作,凡抄袭一经发现平时成绩为0、不完成者平时成绩不给分东华理工大学:C语言第四章作业题 C程序设计第四章 闭/开卷 课程类别:考试/考查题号一二三四五六七八九总分分数评卷人一、选择题(86分,每题2分)1下列运算符中优先级最高的是 。 A) B) + C) & D)!= 2以下关于运算符优先级的描述中,正确的是 。 A)!(逻辑非)算术运算关系运算&(逻辑与)|(逻辑或)赋值运算 B)&(逻辑与)算术运算关系运算赋值运算 C)关系运算算术运算&(逻辑与)|(逻辑或)赋值运算 D)赋值运算算术运算关系运算&(逻辑与)|(逻辑或) 3逻辑运算符的运算对象的数据类型 。(0 级) A)只能是 0或 1 B)只能是.T.或.F. C)只能是整型或字符型 D)任何类型的数据 4能正确表示 x 的取值范围在0,100和-10,-5内的表达式是 。 A)(x=-5)&(x=100) B)(x=-10)&(x=0)&(x=-10)&(x=0)&(x=100) D)(x=-5)&(x=100) 5以下程序的运行结果是 。 main( ) int c,x,y; x=1; y=1; c=0; c=x+|y+; printf(“n%d%d%dn”,x,y,c); A)110 B)211 C)011 D)001 6以下程序的运行结果是 。 main( ) int c,x,y; x=0; y=0; c=0; c=x+&y+; printf(“n%d%d%dn”,x,y,c); A)100 B)211 C)011 D)001 7判断字符型变量 ch 为大写字母的表达式是 。 A)A=ch=A)&(ch=A)&(ch=A)AND(ch=Z) 8判断字符型变量 ch 为小写字母的表达式是 。 A)a=ch=a)&(ch=a)|(ch=a)&(ch0) printf(”%f”,x); x=x+1; printf(”%f”,x); else printf(”%f”,-x); else printf(”%f”,-x); C)if(x0); D)if(x0) x=x+1; printf(”%f”,x); x=x+1; printf(”%f”,x) else printf(”%f”,-x); else printf(”%f”,-x); 10分析以下程序: main( ) int x=5,a=0,b=0; if(x=a+b) printf(“* *n”); else printf(“# #n”); 以上程序 。 A)有语法错,不能通过编译 B)通过编译,但不能连接 C)输出* * D)输出# # 11两次运行下面的程序,如果从键盘上分别输入 6 和4,则输出结果是 。main( ) int x; scanf(“%d”,&x); if(x+5) printf(“%d”,x); else printf(“%dn”,x-); A)7 和 5 B)6 和 3 C)7 和4 D)6和 4 12写出下面程序的执行结果 。 main( ) int x,y=1; if(y!=0) x=5; printf(“%dt”,x); if(y= =0) x=3; else x=5; printf(“%dtn”,x); A)1 3 B)1 5 C)5 3 D)5 5 13写出下面程序的执行结果 。main() int x=1,y=1,z=0; if(z0) x=3; else x=5; printf(%dt,x); if(z=y0) x=3; else if(y= =0 ) x=5; else x=7; printf(%dt,x); printf(%dt,z); A)1 7 0 B)3 7 0 C)5 5 0 D)1 5 1 14假定所有变量均已正确说明,下列程序段运行后 x 的值是 。 a=b=c=0;x=35; if(!a) x=-1; else if(b); if(c) x=3; else x=4; A)34 B)4 C)35 D)3 15写出下面程序的运行结果是 。 main() int x,y=1,z; if(y!=0) x=5; printf(x+%dt,x); if(y= =0) x=3; else x=5; printf(x=%dtn,x); x=1; if(z0)x=3; else x=5; printf(x=%dtn,x); if(z=y0)x=5; else x=7; printf(x=%dt,x); printf(%dtn,z); if(x=y=z)x=3; printf(x=%dt,x); printf(z=%dtn,z); A)x=5 x=5 B)x=5 x=5 x=1 x=1 x=7 z=0 x=5 z=0 x=3 z=1 x=3 z=0 C)x=5 x=5 D)x=5 x=5 x=5 x=1 x=7 z=0 x=7 z=0 x=3 z=1 x=3 z=0 16若有以下函数关系 x0 y=x x=0 y=x+1 下面程序段能正确表示以上关系的是 。 A)y=2x; B)y=2x; if(x!=0) if(x0)y=x; if(x= =0) y=x+1; else y=x+1; else y=x; C)if(x=0) (D)y=x+1; if(x0) y=x; if(x=0) else y=x+1; if(x0) y=2x; else y=2x; else y=x; 17若有以下变量定义: float x; int a,b; 则正确的 switch 语句是 。 A)switch(x) case 1.0:printf(*n); case 2.0:printf(* *n); B)switch(x) case 1,2:printf(*n); case 3:printf(* *n); C)switch(a+b) case 1:printf(*n); case 2*a:printf(* *n); D)switch(a+b) case 1:printf(*n); case 1+2:printf(* *n); 18. 以下关于运算符优先顺序的描述正确的是 。 A)关系运算符算术运算符赋值运算符逻辑运算符 B)逻辑运算符关系运算符算术运算符赋值运算符 C)赋值运算符逻辑运算符关系运算符算术运算符 D)算术运算符关系运算符赋值运算符=10或 a=10 or a=10 | a=10 & a=10 | | a y & x != y ) ; B)if ( x = = y ) x + = y ; C)if ( x != y ) scanf ( “%d”, &x) else scanf ( “%d”, &y); D)if ( x y ) x+; y+; 21. 当 a = 1, b = 3 , c = 5, d = 4 时, 执行完下面程序段后 x 的值为 。 if ( a b ) if ( c d ) x = 1 ; else if ( a c ) if ( b b)printf(“%f”,a); B)if(ab)printf(“%f”,a); else printf(“%f”,b); C)if(ab)printf(“%f”,a) D)if(ab)printf(“%f”,b); else printf(“%f”,b); else printf(“%f”,a); 23. 能表示整数 x 符合下面两个条件的语句是 。 (1)“能被 4 整除,但不能被100 整除”.(2)能被 4 整除,又能被 400整除. A)(x%4=0&x%100!=0)|x%400=0 B)(x%4=0|x%100!=0)&x%400=0 C)(x%4=0&x%400!=0)|x%100=0 D)(x%100=0|x%4!=0)&x%400=0 24. 设有如下定义:char ch=z,则执行下面语句 后变量 ch 是值为: 。ch=(A=ch&chy|xz) z=x; x=y; y=z; A)x=50, y=80, z=80 B)x=50, y=30, z=30 C)x=30, y=50, z=80 D)x=80, y=30, z=50 27. C 语言中,要求运算对象必须是整型的运算符是: 。 A) B)+ C)% D)!= 28. 已知 int x=30,y=50,z=80;以下语句执行后变量 x、 y、 z 的值分别为: 。if (xy|xz) z=x; x=y; y=z; A)x=50, y=80, z=80 B)x=50, y=30, z=30 C)x=30, y=50, z=80 D)x=80, y=30, z=50 29. 以下程序的输出结果是 。main( ) int x=2,y=-1,z=2; if (xy) if(y0) z=0; else z+=1; printf(“%dn”,z); A)3 B)2 C)1 D)0 30. 设 a、b 和 c 是 int 型变量,且 a=2,b=4,c=6,则下面表达式中值为 0 的是: 。 A)a+ b B)a=b C)a|b+c&b-c D)!( (ab) &!c | 1 ) 31. 在C 的 if语句中,可用作判断的表达式是: 。 A)关系表达式 B)逻辑表达式 C)算术表达式 D)任意表达式 32. 下面能正确表示变量 a 在区间0,5或(6,10)内的表达式为: 。A)0=a | a=5 |6 a | a10 B)0=a&a=5 | 6a&a10 C)(0=a|a=5)&(6a|a10) D)0=a&a=5&6a&a 0 ) printf(“ %f ”, x ) else printf(“%f”, - x ); B)if ( x 0 ) x = x + y ; printf (“%f ”, x ) ; else printf ( “%f ”, - x ) ; C)if ( x 0 ) x = x + y ; printf (“%f ”, x ) ; ; else printf ( “%f ”, - x ) ; D)if ( x 0 ) x = x + y ; printf (“%f ”, x ) else printf ( “%f ”, - x ) ; 35为了表示关系 x=y=z,应使用C 语言表达式 。 A)(x=y)&(y=z) B)(x=y)AND(y=z) C)(x=y=z) D)(x=y)&(y=z) 36若欲表示在 if 后 a 不等于 0 的关系,则能够正确表示这一关系的表达式 为 。 A)a0 B)!a C)a=0 D)a 37下面程序的输出结果是 。 main() int x,y,z; x=y=1; z=x+-1; printf(“%d,%dt”,x,z); z+=-x+(+y|+z); printf(%d,%d”,x,z); A)2,0 3,-1 B)2,1 3,0 C)2,0 2,1 D)2,1 0,1 38下面程序的输出结果是 。 main() int x=40,y=4,z=4; x=y= =z; printf(“%d”,x); x=x= =(y-z); printf(%d”,x); A)4 0 B)4 1 C)1 1 D)1 0 39.若 x=3,y=z=4,则下列表达式的值分别为 。 (1)(z=y=x)?1:0 (2)z=y& y=x A)0 1 B)1 1 C)0 0 D)1 0 40.若 x=3,y=z=4,则下列表达式的值分别为 。 (1)(z=y=x)?1:0 (2)y+=z,x*=y A)0 24 B)1 8 C)0 8 D)1 12 41在以下一组运算符中,优先级最高的运算符是 。 A)= B)= C)% D)& 42.以下程序的输出结果是 。 main() int a=-1,b=4,k; k=(+a=0)&!(b-=0); printf(%d %d %d,k,a,b); A)1 0 4 B)0 0 4 C)1 0 3 D)0 0 3 43.若已定义 int a=25,b=14,c=19;以下三项运算符(?:)所构成的语句的执行结果是 。 a+=25&b-=2&c+?printf(*a=%d,b=%d,c=%dn,a,b,c):printf(#a=%d,b=%d,c=%dn,a,b,c) A)(*a=25,b=14,c=19) B)(*a=26,b=13,c=19) C)(#a=25,b=14,c=19) D)(#a=26,b=13,c=19) 二、填空题 1在C 语言中,对于 if语句,else子句与 if子句的配对约定是 。 2阅读下面程序,写出它的功能。 #include main() int label; char c; printf(nPlease enter 1 number:); c=getchar(); while(c!=n) if(c= =.) label=1; c=getchar(); if(label= =1) printf(nfloat); else printf(nint); 3以下两条if语句可合并成一条 if语句为 。 if(ab) printf(* * * * y=%dn,y); else printf(# # # # x=%dn,x); 4以下程序的功能是计算一元二次方程 ax2+bx+c=0 的根,补足程序中空缺的语句。 #include main( ) float a,b,c,_abs,_derta,_doublea,part1,part2; printf(enter a,b,c:); scanf(%f%f%f,&a,&b,&c); if( (1) ) if( (2) ) printf(no answer due to input errorn); else printf(the single root is %fn,-c/b); else _derta=b*b-4*a*c; _doublea=2*a; part1=-b/(2*a); _abs=abs(_derta); part2=sqrt(_abs)/_doublea; if( (3) ) printf(complex root nreal part=%f image part=%fn,part1,part2); else printf(real rootsn root1=%f root2=%fn,part1+part2,part1-part2); 5设有程序片段如下: switch(class) case A:printf(GREAT!n); case B:printf(GOOD!n); case C:printf(OK! n); case D:printf(NO!n); default:printf(ERROR!n); 若 class 的值为C,则输出结果是 。6以下程序段的运行结果是 。 int x=1,y=0; switch(x) case 1: switch(y) case 0:printf(x=1 y=0n);break; case 1:printf(y=1n);break; case 2:printf(x=2n); 7根据以下 if语句写出与其功能相同的 switch 语句(x 的值在 0100 之间)。 if语句: if(x60) m=1; else if(x70) m=2; else if(x80) m=3; else if(x90) m=4; else if(x100) m=5; switch 语句: switch( (1) ) (2) m=1;break; case 6:m=2;break; case 7:m=3;break; case 8:m=4;break; (3) m=5; 8. 输入 3 个实数 a, b, c要求按从大到小的顺序输出三数。 main( ) float a,b,c,t; scanf(“%f,%f,%f”,&a,&b,&c); if (ab) t=a; _(1)_ b=t; if(_(2)_) t=a; a=c; c=t; if(b=a&chb ) c = 1 ; else if ( a = b ) c = 0 ; else c = -1 ; printf ( “%dn”, c ) ; 11. 以下程序的运行结果是:_。 main( ) int x; x=5; if (+x5) printf(“x=%d”,x); else printf(“x=%d”,x-); 12在C 语言中提供的条件运算符?:的功能是 . 13条件表达式 a?b:c,其中 a,b,c 是三个运算分量.当运算分量 a 的值为真,则 ,否
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年麻醉学临床技能考核模拟试题答案及解析
- 2025-2030功能性食品原料创新趋势与消费者认知度研究报告
- 2025-2030功能性药用饲料对畜禽产品品质影响及消费者认知调研报告
- 2025-2030分子诊断POCT设备基层医院配置规划报告
- 2025-2030关于纳米材料技术突破与产业化应用前景的专项调研报告
- 2025-2030共享经济法律服务市场发展趋势及竞争格局报告
- 2025年康复科脑卒中功能康复训练练习题答案及解析
- 2025-2030公寓行业并购重组趋势与标的估值方法报告
- 2025年骨科创伤急救处理应急演练模拟试题答案及解析
- 2025年垃圾分类知识竞赛试题与答案
- 2025至2030中国视觉点胶机市场运行状况与未来发展走势预测报告
- 种草莓劳动课件
- 雀巢牛奶购销合同范本
- 4.1夯实法治基础教学设计 2025-2026学年度九年级上册 道德与法治 统编版
- 连铸工岗位操作规程考核试卷及答案
- 2025兵团普通职工考试试题及答案
- 《中国老年危重患者营养支持治疗指南(2023)》解读 4
- 2025年广东国家公务员申论考试真题及答案-地市级
- 绿色矿山培训课件
- 国有企业十五五人力资源规划框架
- 无人机实操训练课件
评论
0/150
提交评论