1、 if(ac) if(bd) x=2; else x=3;else x=6;else x=7;A) 1 B) 2 C) 3 D) 67. 有一个函数关系见下表: xy=xx+1下面程序中能正确表示上面关系的是_。A) y=x+1=0) if(x=0) y=x;B) else y=x-1; y=x-1;if(x! if(x0) y=x+1;else y=x;C) if(xif(x0) y=x-1;D) else y=x+1; y=x; if(x else y=x+1;8. 以下程序的输出结果是_。 int a=100, x=10, y=10, ok1=5, ok2=0;y)if(y!=10) i
2、f(!ok1) a=1; else if(ok2) a=10; a=-1;printf(“%dn”,a); A) 1 B) 0 C) 1 D) 值不确定9. 以下程序的输出结果是_。 int x=2,y=-1, z=2; if(y0) z=0; else z+=1; printf(“%dn”,z);10. 为了避免在嵌套的条件语句if-else中产生二义性,C语言规定:else子句总量与_配对。 A) 缩排位置相同的if B) 其之前的最近的if C) 其之后最近的if D) 同一行上的if11. 以下不正确的语句为_。B) if(x=y)&(x!=0) x+=y;y) scanf(“%d”,
3、&x); else scanf(“%d”,&y)x+;y+;12. 请阅读以下程序:#include “stdio.h”main() float a,b; scanf(“%f”,&a);0.0)b=0.0; else if(a0.5)&(a!=2.0) b=1.0/(a+2.0); else if(a10.0) b=1.0/x; else b=10.0; prinf(“%fn”,y);若运行时输入2.0,则上面程序的输出结果是_。A) 0.000000 B) 0.500000 C) 1.000000 D) 0.250000二、程序阅读题13. 请阅读以下程序: int t,h,m; scanf
4、(“%d”,&t); h=(t/100)%12; if(h=0) h=12; printf(“%d:”,h); m=t%100; if(m10) printf(“0”); printf(“%d”,m); if(t1200|t=2400) printf(“AM”); else printf(“PM”); 若运行时输入:1605时,程序的运行结果是_。14. 若运行是输入:5999=0&=2999) y=18+0.12*x;=3000&=5999) y=36+0.6*x;=6000&=10000) y=54+0.3*x; printf(“%6.1f”,y);15. 以下程序实现输出x,y,z三个数
5、中的最大者。请在_内填入正确内容。 int x=4, y=6, z=7; int _1_; if(_2_) u=x; else u=y; if(_3_) v=u; else v=z; printf(“v=%d”,v);16. 以下程序实现:输入三个整数,按从大到小的顺序进行输出。请在_内填入正确的内容。 int x,y,z,c; scanf(“%d %d %d”,&x,&y,&z);if(_1_) c=y; y=z; z=c;if(_2_) c=x; x=z; z=c;if(_3_) x=y; y=c;printf(“%d, %d,%d”,x,y,z);17. 以下程序对输入的两个整数,按从大
6、到小顺序输出。请在_填入正确内容。 int x, y, z; scanf(“%d,%d”,& if(_1_) z=x; _2_ printf(“%d,%d”,x,y);18. 以下程序对输入的一个小写字母,将字母循环后移5人位置输出。如a变成f,w变成b。 #include “stdio.h” main( ) char c; c=getchar( ); if(c=a&c=v&=z) _2_; putchar(c);19. 输入一个字符,如果它是一个大写字母,则把它变成小写字母;如果它是一个小写字母,则把它变成大写字母;其它字符不变。 char ch; scanf(“%c”,&ch); if(_
7、) ch=ch+32; else if(chch0) if(c0) x=4;printf(“t%dn”,x);23.以下程序的运行结果是_。 int x, y=-2, z=0; if(z=y0) s=s+1;b) t=s+t;else if(a=b) t=5; else t=2*s; printf(“s=%d, t=%d”, s, t);为了使输出结果t=4,输入量a和b应满足的条件是_。25.请阅读的程序。 else if(a=b) t=5;为了使输出结果s=1, t=5,输入量a和b应满足的条件是_。26. 以下程序的功能是计算一元二次方程ax2+bx+c=0的根。#include “ma
8、th.h” float a, b, c, t, disc, twoa, term1, term2; printf(“enter a, b, c:”); scanf(“%f %f %f”, &b, &c); if(_1_) if(_2_) printf(“no answer due to input errorn”); else printf(“the single root is %fn”, -c/b); disc=b*b-4*a*c; twoa=2a; term1=-b/twoa; t=abs(disc); term2=sqrt(t)/twoa; printf(“complex rootn
9、real part =%f imag part =%fn”, term1,term2);else printf(“real rootsn root1=%f root2=%fn”, term1+term2, term1-term2);27. 以下程序根据输入的三角形的三边判断是否能组成三角形,若可以则输出它的面积和三角形的类型。 float a, b, c; float s, area; scanf(“%f %f %f”,& if(_1_)/*a+bc&|a+cb&b+ca*/ s=(a+b+c)/2; arae=sqrt(s*(s-a)*(s-b)*(s-c); printf(“%f”, ar
10、ea); if(_2_)/*a=b&b=c&a=c*/ printf(“等边三角形”); else if(_3_) printf(“等腰三角形”);/*a=b | a=c| b=c*/ else if(a*a+b*b=c*c)|(a*a+c*c=b*b)|(b*b+c*c=a*a) printf(“直角三角形”); else printf(“一般三角形”); else printf(“不能组成三角形”);28. 某邮局对邮寄包裹有如下规定:若包裹的长宽高任一尺寸超过1米或重量超过30千克,不予邮寄;对可以邮寄的包裹每件收手续费0.2元,再上根据下表按重量wei计算的邮资: 重量(千克)收费歀(
11、元)wei100.8010=200.75201|wid1|hei1|wei30) _1_; else if(wei=50) m=t*80+(c-t)*60; else m=t*90+(c-t)*60; else if(_3_) m=c*80+(t-c)*45; else m=c*90+(t-c)*45; printf(“%d”,m;)30. 以下程序的功能是判断输入的年份是否是闰年。 int y, f; scanf(“%d”, & if(y%400=0) f=1; else if(_1_) f=1; else _2_; if(f) printf(“%d is ”, y); else print
12、f(“%d is not”,y); printf(“a leap yearn”);31. 以下程序针对输入截止日期(年:year,月:mend,日:dend)和出生日期(yman, mman, dman),计算出实际年龄。 设有:int yend,mend,dend,mman,dman,age; ageyendyman; if(mend_1_), age-; else if(mend_2_mman&dend_3_dman) age-;32. 有四个数a,b,c,d,要求按从大到小的顺序输出。 int a,b,c,d,t; scanf(“%d %d %d %d”,&a,&b,&c,&d);b)t
13、=a; a=b; b=t; if(_1_) t=c; c=d; d=t;c)t=a; a=c;c=t; if(_2_) t=b; b=c;c=td)t=b; b=d;d=t;d) t=c;c=d; printf(“%d %d %d %dn”,a,b,c,d);33. 以下程序的运行结果是_。 int a=2,b=3,c; c=a;b) c=1; else if(a=b) c=0; else c=-1; printf(“%dn”,c);34. 当运行时输入:1992,则以下程序的运行结果是_。 int y, t; t=(y%4=0&y%100!=0)|y%400=0)?1:0; if(t) pr
14、intf(“%d is”,y); printf(“a leap year”);35. 若运行时输入:3 5 / float x, y; char o; double r; scanf(“%f %f %c”,&x, &y, &o); switch(o) case + : r=x+y; break; case - : r=x-y; case * : r=x*y;case / : r=x/y; printf(“%f”, r);36. 设有程序片段:switch(grade) case A : printf(“85-100n”); case B : printf(“70-84n”); case C :
15、 printf(“60-69n”); case D : printf(“ switch(b printf(“”); casa 2: printf(“! switch(c=5) printf(“*”); printf(“#”); default : printf(“& printf(“n”);39. 请读程序:#include int x=1, y=0, a=0, b=0; case 1: a+; b+; printf(“a=%d, b=%d”,a,b);40. 以下程序用以计算y年m1月d1日与同年的m2月d2日之间的天数(m2=m1),并打印计算结果。若m1m2且d1=d2则计算1天。在闰年中,2月有29天。闰年的年号由以下方式确定:该年号能被能被4整除但不能被100整除,或者该年号能被400整除则是闰年。例如:输入1997,2,27,3,10时,输出为12天。表明从1997年2月27日到3月10日共有12天。请在_内填入正确内容。 int y, m1, d1, m2, d2; int i,d; scanf(“%d %d %d,%d,%d”,&m1,&d1,&m2,&d2); y=(y%4=0_1_y%100!=0_2_y%40=0)? d=0-d1; for(i=m1;iy 3)uz1)yz 2)x3)xy1)x2)
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2