




已阅读5页,还剩22页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第四部分 选择结构 一、选择题 (1)当把以下四个表达式用作if语句的控制表达式时,有一个选项与其它三个选项含义不同,这个选项是 A)k%2 B)k%2=1 C)(k%2)!=0 D)!k%2=1 (2)设有定义:int k=1,m=2; float f=7;,则以下选项中错误的表达式是 A)k=k=k B)-k+ C)k%int(f) D)k=f=m (3)设有定义:int a=2,b=3,c=4;,则以下选项中值为0的表达式是 A)(!a=1)&(!b=0) B)(ab)& !c|1 C)a & b D)a|(b+b)&(c-a) (4)设变量a、b、c、d和y都已正确定义并赋值。若有以下if语句 if (ab) if(c=d) y=0; else y=1; 该语句所表示的含义是 (5)有以下程序 main() int a,b,d=25; a=d/10%9; b=a&(-1); printf(%d,%dn,a,b); 程序运行后的输出结果是 A)6,1 B)2,1 C)6,0 D)2,0 (6)有以下程序 main() int i=1,j=2,k=3; if(i+=1&(+j=3|k+=3) printf(%d %d %dn,i,j,k); 程序运行后的输出结果是 A)1 2 3 B)2 3 4 C)2 2 3 D)2 3 3 (7)若x和y代表整型数,以下表达式中不能正确表示数学关系|x-y|10的是 A) abs(x-y)-10& x-y10 C) (x-y)10 D) (x-y)*(x-y)b) if(bc) printf(%d,d+ +1); else printf(%d,+d +1); printf(%dn,d); 程序运行后的输出结果是 A) 2 B) 3 C) 43 D) 44 (9)下列条件语句中,功能与其他语句不同的是 A) if(a) printf(%dn,x); else printf(%dn,y); B) if(a=0) printf(%dn,y); else printf(%dn,x); C) if (a!=0) printf(%dn,x); else printf(%dn,y); D) if(a=0) printf(%dn,x); else printf(%dn,y); (10)以下4个选项中,不能看作一条语句的是 A) ; B) a=0,b=0,c=0; C) if(a0); D) if(b=0) m=1;n=2; (11)以下程序段中与语句k=ab?(bc?1:0):0;功能等价的是 A) if(aB) &(bC) ) k=1; B) if(aB) |(bC) ) k=1 else k=0; C) if(aB) k=1; else if(bC) k=1; else k=0; (12) 有以下程序 main() int a=1,b=2,m=0,n=0,k; k=(n=ba)|(m=ab); printf(%d,%dn,k,m); 程序运行后的输出结果是 A) 0,0 B) 0,1 C) 1,0 D) 1,1 (13) 有定义语句:int a=1,b=2,c=3,x; 则以下选项中各程序段执行后,x的值不为3的是 A) if (ca) x=1; B) if (a3) x=3; else if (ba) x=2; else if (a2) x=2; else x=3; else x=1; C) if (a3) x=3; D) if (ab) x=b; if (a2) x=2; if (bc) x=c; if (a1) x=1; if (cbc) printf(%dn,d); else if(c-1=d)=1) printf(%dn,d+1); else printf(%dn,d+2) 执行后输出结果是 A) 2 B) 3 C) 4 D) 编译时有错,无结果 (16) 已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 & y+z/2的值是 A) B) C) D) (17) 有一函数, ,以下程序段中不能根据值正确计算出值的是 A) if(x0) y=1; B) y=0; else if(x=0) y=0; if(x0) y=1; else y=-1; else if(x=0) if(x=0); if(x0) y=1; if(x0) y=1 ; else y=0; else y=-1; else y=-1; (18) 有以下程序 main() int a=15,b=21,m=0; switch(a%3) case 0:m+;break; case 1:m+; switch(b%2) default:m+; case 0:m+;break; printf(“%dn”,m); 程序运行后的输出结果是 A) 1 B) 2 C) 3 D) 4 (19) 以下程序的输出结果是 main() int a=5,b=4,c=6,d; printf(%dn,d=ab?(ac?a:c):(b); A) 5 B) 4 C) 6 D) 不确定 (20) 以下程序的输出结果是 main() int a=4,b=5,c=0,d; d=!a&!b|!c; printf(%dn,d); A) 1 B) 0 C) 非0的数 D) -1 (21) 设 a、b、C、d、m、n均为 int型变量,且 a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式 (m=ab)&(n=cd)运算后,n的值位为 A) 0 B) 1 C)2 D) 3 (22) 阅读以下程序: main() int x; scanf(“%d”,&x); if(x-5) printf(“%d”x); else printf(“%d”x+); 程序运行后,如果从键盘上输人5,则输出结果是 A)3 B) 4 C) 5 D) 6 (23) 假定w、x、y、z、m均为int型变量,有如下程序段: w=1; x=2; y=3; z=4; m=(wx)?w; x; m=(my)?m;y; m=(mz)?m; z; 则该程序运行后,m的值是 A) 4 B) 3 C) 2 D) 2 (24) 设x、y、t均为int型变量,则执行语句:x=y=3;t=+x|+y;后,y的值为 A) 不定值 B) 4 C) 3 D) 1 (25) 若执行以下程序时从键盘上输入9,则输出结果是 A) 11 B) 10 C) 9 D) 8 Main0 int n; scanf(“%d”,&n); if(n+=10 or a=0|a=10 &a=10a=0 (28) 有如下程序 main0 int x=1,a=0,b=0; switch(x) case 0: b+; case 1: a+ case 2: a+;b+ printf(“a=%d,b=%dn”,a,b); 该程序的输出结果是 A) a=2,b=1 B) a=1,b=1 C) a=1,b=0 D) a=2,b=2 (29) 有如下程序 main0 float x=2.0,y; if(x0.0) y=0.0; else if(x10.0) y=1.0/x; else y=1.0; printf(“%fn”,y); 该程序的输出结果是 A) 0.000000 B) 0.250000 C) 0.500000 D) 1.000000 (30) 有如下程序 main0 int a=2,b=-1,c=2; if(ab) if(b0?1:x0) y=1; B) if(x) else if(x0)y=1; else y=0; else if(x=0) if(x0)y=1; if(x0)y=1; else if(x=0)y=0; else y=-1; else y=-1; (33) 语句:printf(%d,(a=2)&(b= -2);的输出结果是 A) 无输出 B) 结果不确定 C) -1 D) 1 (34) 当c的值不为0时,在下列选项中能正确将c的值赋给变量a、b的是 A) c=b=a; B) (a=c) (b=c) ; C) (a=c) &(b=c); C) a=c=b; (35) 能正确表示a和b同时为正或同时为负的逻辑表达式是 A) (a=0b=0)&(a0b=0&b=0)&(a0&b0)&(a+b0 (36) 以下程序的输出结果是 A) -1 1 B) 0 1 C) 1 0 D) 0 0 main( ) int a= -1,b=1,k; if(+a0)& ! (b- 5) printf(%dn,m); esle printf(%dn,m- -); (38) 当a=1,b=3,c=5,d=5时,执行下面一段程序后,x的值为 A) 1 B) 2 C) 3 D) 6 if(ab) if(cd) x=1; else if(ac) if(bd) x=2; else x=3; else x=6; else x=7; (39) 表示关系x=y=z的c语言表达式为 A) (X=Y)&(Y=Z) B) (X=Y)AND(Y=Z) C) (X=Y=Z) D) (X=Y)&(Y15 D)!(a=15) (42) 若有以下定义: float x;int a,b; 则正确的switch 语句是 A)switch(x) B)switch(x) case1.0:printf(*n); case1,2:printf(*n); case2.0:printf(*n); case3:printf(*n); C)switch (a+b) D)switch (a+b); case 1:printf(n); case 1:printf(.*n); case 1+2:printf(*n); case 2:printf(*n); (43) 假定所有变量均已正确说明,下列程序段运行后x的值是 a=b=c=0;x=35; if(!a)x-; else if(b); if(c)x=3; else x=4; A)34 B)4 C)35 D)3 (44) 在以下一组运算符中,优先级最高的运算符是 A)=10 or a=10a=10a=10 a=y)&(y=z) B(x=y)AND(y=z) C)(x=y=z) D)(x=y)&(y=z) (49) 两次运行下面的程序,如果从键盘上分别输入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 (50) 以下程序的输出结果是 main( ) int a=-1,b=4,k; k=(+ +a0)&!(b - -=0); printf(%d%d%dn,k,a,b); A) 104 B) 103 C) 003 D) 004 (51) 下面的程序 A) 有语法错误不能通过编译 B) 输出* * * *。 C) 可以通过编译,但是不能通过连接,因而不能运行。 D) 输出# # # #。 main() int x=3,y=0,z=0; if(x=y+z)printf(* * * *); else printf(# # # #); (52) 若执行下面的程序时从键盘上输入5,则输出是 A) 7 B) 6 C) 5 D) 4 main() int x; scanf(%d,&x); if(x+5) printf(%dn,x); else printf(%dn,x-); (53) 下面程序的输出是 A) 0 0 3 B) 0 1 2 C) 1 0 3 D) 1 1 2 main() int a=-1, b=4,k; k=(a+=0)&(!(b-=0); printf(%d %d %dn,k,a,b); (55) 下面程序的输出是 A) -1 B) 0 C) 1 D) 不确定的值 main() int x=100, a=10, b=20, ok1=5, ok2=0; if(ab) if(b!=15) if(! ok1) x=1; else if(ok2)x=10; x=-1; printf(%dn,x); (56) 设a、b和c都是int型变量,且a=3,b=4,c=5,则下面的表达式中,值为0的表达式是 A) a&b B) a=b C) a|b+c&b-c D) !(ab)&!c|1) (57) 请读程序: #include main() float x,y; scan(%f,&x); if(x0.0) y=0.0 else if(x5.0)&(x!=2.0) y=1.0/(x+2.0); else if (x10.0) y=1.0/x; else y=10.0; printf(%fn,y); 若运行时从键盘上输入2.0(表示回车),则上面程序的输出结果是 A) 0.000000 B) 0.250000 C) 0.500000 D) 1.000000 (58) 请读程序: #include main() int x=1, y=0, a=0, b=0; switch(x) case 1: switch(y) case 0: a+;break; case 1: b+;break; case 2: a+; b+; break; printf(a=%d, b=%dn,a,b); 上面程序的输出结果是 A) a=2, b=1 B) a=1, b=1 C) a=1, b=0 D) a=2, b=2 (59)以下程序的输出结果是【59】 。 # include main() int a ,b,d=241; a=d/100%9; b=(-1)&(-1); printf(%d,%dn,a,b); A) 6,1 B) 2,1 C) 6,0 D) 2,0 (60) 若k是int型变量,且有下面的程序片段: k=-3 if(k=0) printf(#) else printf(&); 上面程序片段的输出结果是 A) # B) & C) #& D) 有语法错误,无输出结果 二、填空题 (1)以下程序运行后的输出结果是 【1】 。 main() int a=1,b=2,c=3; if(c=a) printf(%dn,c); else printf(%dn,b); (2)以下程序运行后的输出结果是 main() int a=3,b=4,c=5,t=99; if(ba&ac) t=a;a=c;c=t; if(ac&bc) t=b;b=a;a=t; printf(%d%d%dn,a,b,c); (3)以下程序运行后的输出结果是 main() int a,b,c a=10;b=20;c=(a%b1); printf(%d %d %dn,a,b,c); (4)以下程序运行后的输出结果是 【4】 。 main() int x=1,y=0,a=0,b=0; switch(x) case 1:switch(y) case 0:a+; break; case 1:b+; break; case 2:a+;b+; break; printf(%d %dn,a,b); (5)有以下程序 main( ) int n=0,m=1,x=2; if(!n) x-=1; if(m) x-=2; if(x) x-=3; printf(“%dn”,x); 执行后输出结果是【5】 。 (6) 以
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 阿细跳月教学设计小学音乐人音版五线谱六年级下册-人音版(五线谱)
- (正式版)DB2312∕T 096-2023 《水稻节水增效生产技术规程》
- 江苏省高邮市八桥镇初级中学八年级信息技术《动画基础知识》说课稿
- 汇众家政专业知识培训课件
- 求购启事课件
- 第9课《防火避险》(教学设计)-一年级下册综合实践活动人教版
- 淘宝店铺运营知识入门培训课件
- 新能源汽车维修工程 课件 第一章 绪论
- 本册综合说课稿小学信息技术(信息科技)六年级下册人教版
- 淘宝买课件骗局
- 2025年湖南大学事业编制管理辅助岗位招聘58人笔试备考题库及答案解析
- 2025年西藏国家公务员考录《行测》真题及参考答案
- 云南省云南大附中(一二一校区)2026届数学七上期末统考试题含解析
- 热管安全培训课件
- 河南省重点高中2025-2026学年高一上学期开学检测语文试题及答案
- 农业遥感耕地资源调查方案
- 人工智能+金融科技经济增长趋势研究报告
- 充电桩维修安全培训课件
- 保险新员工考试题及答案
- 网格人员安全培训内容课件
- 2025至2030中国智能无人船行业市场发展分析及竞争态势与产业运行态势及投资规划深度研究报告
评论
0/150
提交评论