资源描述
1假定所有变量均已正确定义,下列程序段运行后X的 值 为()。kl=l;k2=2;k3=3;x=15;if(!kl)x-;else if(k2)if(k3)x=4;else x=3;(L5 分)1.5分41415.3正确答案:A 我的答案:A答案解析:2下面有关fo r循环的正确描述是()(L5 分)1.5分*fo r循环是先执行循环体语句,后判定表达式fo r循环体语句中,可以包含多条语句,但要用花括号括起来fo r循环只能用于循环次数已经确定的情况在 fo r循环中,不能用break语句跳出循环体正确答案:B 我的答案:B答案解析:3在 C 语言中,为了结束while语句构成的循环,while后一对圆括号中表达式的值应该为()。(L 5 分)L 5分*1.true非0D、0正确答案:D我的答案:D答案解析:4逗号表达式(a=3*5,a*4),a+15的值为.(L5 分)1.5分60不确定3015正确答案:C我的答案:C答案解析:5有程序段如下int k=-20;while(k=0)k=k+l;则 以 下 说 法 中 正 确 的 是()。(1.5 分)1.5分循环是无限循环循环体语句一次也不执行while循环执行20次循环体语句执行一次正确答案:B我的答案:B答案解析:6以下正确的描述是()o(L5 分)1.5分break语句只能在循环体内和switch语句体内使用在循环体内使用break语句或continue语句的作用相同.continue语句的作用是结束整个循环的执行从多层循环嵌套中退出时,只能使用goto语句正确答案:A我的答案:A答案解析:7以下程序片段的输出结果是()。int y=10;for(;y0;y-)if(y%3=0)printf(%d,y);continue;(1.5 分)1.5分A、852875421741963正确答案:A我的答案:A答案解析:8C语言中()(1.5 分)1.5分do-while语句构成的循环必须用break语句才能退出不能使用do-while语句构成的循环d o-w h ile语句构成的循环,当 w hile语句中的表达式值为零时结束循环dowhiLe语句构成的循环,当 w hile语句中的表达式值为非零时结束循环正确答案:C我的答案:C答案解析:9以下程序段的输出结果是int ij,m=0;for(i=l;i=15;i+=4)for(j=3;j=0);c、int s=36whi l e(s);-s;D、int i=100;while(l)i=i%100+l:if(i100)break;正 确 答 案:B我 的 答 案:B答 案 解 析:12有以下语句:1 =1;for(;i=100;i+)sum+=i;与以上语句序列不等价的有()。(1.5 分)1.5分A、for(i=1 ;i=100;)sum+=i;i+;B、i=1 ;for(;)sum+=i;if(i=1 OO)break;i+;c、i=1 ;for(;i=1 OO;)sum+=i;D、for(i=l;i+)sum+=i;if(i=1 OO)break;正确答案:c我的答案:C答案解析:13以下程序段的输出结果是()。int k,j,s;for(k=2;k6;k+,k+)(s=l;for(j=k;j=-5 8)|(x=4 0)|(x=-5 8)&(x=4 0)&(x=-58)&(x=40)&(x=-58)|(x=40)|(x b)&(n=c d)后 n 的 值 是()。(L 5 分)1.5 分24C、1D、3正确答案:A我的答案:A答案解析:19以 下 能正确计算1 X 2 X 3 X-X 1 0的程序段是()(1.5 分)L5分doi=l;s=0;s=s*i;i+;while(i=10);doi=l;s=l;s=s*i;i+;while(i=10);*i=l;s=O;do(s=s*i;i+;while(i=10);*i二l;s=1;dos=s*i;i+;while(i=10);正确答案:D我的答案:D答案解析:20程序段如下int k=l;while(!k=O)k=k+l;printf(%dn,k);说 法 正 确 的 是()。(1.5 分)1.5分循环是无限循环.循环体语句执行一次while循环执行2次D、循环体语句一次也不执行正确答案:A我的答案:A答案解析:21下列程序片段的输出结果是()。int i,a=O,b=O;for(i=l;i10;i+)if(i%2=0)a+;continue;b+;printf(a=%d,b=%d,a,b);(1.5 分)1.5分a=4,b=5a=5,b=5a=4,b=4a=5,b=4正确答案:A 我的答案:A答案解析:22下面程序片段的运行结果为()int n;for(n=l;n0|E0)(E=0)(!E=0)D、(E!=0)正确答案:B我的答案:B答案解析:25以下程序片段的输出结果是()。int n=0;while(n+=l)printfC%dt,n);printf(%dn,n);(L5 分)1.5分012112C、123D、122正确答案:C我的答案:C答案解析:26在 C程序中,判逻辑值时,用 非 0表 示 逻 辑 值 真 ,用 0 表示逻辑值 假 。在求逻辑值时,用()表示逻辑表达式值为 真,用()表示逻辑表达式值 为 假 。(1.5 分)1.5分0 110非0非0*1 1正确答案:B我的答案:B答案解析:27设有以下程序段,则执行该片段后()。int x=0,s=0;while(!x!=0)s+=+x;printf(%d 0 ,s);(L5 分)1.5分运 行 程 序段后输出1程序段中的控制表达式是非法的程序段执行无限次运行程序段后输出0正确答案:A我的答案:A答案解析:28为了避免嵌套的if-else语句的二义性,C 语言规定else总 是 与()组成配对关系。(1.5 分)1.5分在其之前未配对的if缩排位置相同的if同一行上的if在其之前未配对的最近的if正确答案:D 我的答案:D答案解析:29下列程序片段运行的情况是()。int i=l,sum=O;while(i10)sum=sum+l;i+;printf(i=%d,sum=%d,i,sum);(1.5 分)0。分i=9,sum=9i=10,sum=9运行出现死循环i=2,sum=l正确答案:C我的答案:B答案解析:30若i,j已定义为int类型,则以下程序段中内循环的总的执行次数是()。for(i=5;i;i)for(j=0;j4;j+)(1.5 分)1.5分24*20C、2 53 0正确答案:B我的答案:B答案解析:3 1以下fo r循环是()。f o r(a=0,b=0;(b!=1 2 3)&(a=4);a+)(L5 分)1.5 分循环次数不定无限循环执 行 5次执 行 4次正确答案:C 我的答案:C答案解析:32若 in ti,j;,则 for(i=j=0;i10&j8;i+,j+=3)控制的循环体执行的次数是()。(1.5 分)1.5分89.23正确答案:D我的答案:D答案解析:33当输入为“quert?”时,下面程序片段的输出结果是()。char c;c=getchar();while(c=getchar()!=*?)putchar(+c);(L5 分)L 5 分vfsuquert?Quertrvfsu?正确答案:A我的答案:A答案解析:34执行下面语句的输出为()。int i=-l;if(i=O)printf(*n);else printf(%n);(1.5 分)1.5分%有错,执行不正确%c*正确答案:D我的答案:D答案解析:35已知int t=0;while(t=l)则 以 下 叙 述 正 确 的 是()。(L5 分)1 5分循环控制表达式的值为1D以上说法都不对循环控制表达式的值为0循环控制表达式不合法正确答案:A 我的答案:A答案解析:36程序段如下int k=0;while(k+=2);printf(last=%dn/k);则执行输出结果是last二()。(L5 分)1.5分32*4*无结果正确答案:C我的答案:C答案解析:37下 面 程 序 的 运 行 结 果 是().int y=10;do y-;while(-y);printf(%dn,y-);(L5 分)0.0分A、8*0正确答案:C我的答案:A答案解析:38标有/*/的语句的执行次数是()。int y,i;for(i=0;i20;i+)讦(i%2=0)continue;y+=i;/*/)(1.5 分)1.5分19B.910.20正确答案:C我的答案:C答案解析:39程序段如下int k=0;while(k+=2)printf(%d,k);则执行结果是().(L5 分)1.5分234123无结果012正确答案:B 我的答案:B答案解析:40根据定义和数据的输入方式,输入语句的正确形式为:已有定义:float al,a2;数据的输入方式:4.5233.52(1.5 分)0.0分scanf(%f,%f”,al,a2);scanf(“4.3f,%3.2f”,&al,&a2);.scanf(“4.3f%3.2f,al,a2);.scaMf%f”,&al,&a2);正确答案:D 我的答案:B答案解析:二、填 空 题(题数:25,共40.0分)1以下程序段的输出结果是.int i=0,sum=1;do sum+=i+;while(i b)max=a;else max=b;(1.6 分)1.6分正确答案第一空:max=(ab)?a:b;我的答案:第一空:max=(ab)?a:b;答案解 析:3下列程序片段功能是计算Fibonacci数列:1,1,2,3,5,8,13main()int i;long fl=l,f2;的前4 0项。for(i=0;ib;+b)i+;(1.6 分)L6分正确答案第一 空:5我的答案:第一 空:5答案解析:5若输入字母C,下面程序片段输出结果为char cl,c2;cl=getchar();while(cl122)cl=getchar();c2=cl-32;printff M%cn,c2);(1.6 分)0.0分正确答案第一 空:C我的答案:第一空:cC答案解析:6定义int x=10,y,z;执行y=z=x;x=y=z;后,x 的结果是 o(1.6 分)1.6分正确答案第一空:1我的答案:第一空:1答案解析:7下面程序片段的功能是把316拆分为两个分别能被13和 11整除的加数。请在 内填入正确内容。int i=0,j,k;d o i+;k=316-13*i;w h i l e();j=k/l l;p r i n t f(,316=13*%d+l l*%dw,i,);)(1.6 分)1.6分正确答案第一空:m%ll第二空:j我的答案:第一空:m%ll第二空:答案解析:8下面程序片段的功能是将从键盘输入的一组字符中统计出大写字母的个数m和小写字母个数n,并输出m,n中的较大数,请在 内填入正确内容。i n t.m=0,n=0;c h ar c;w h i l e()!=,n,)i f(c =A&=V )m+;i f(c =a z )n+;p r i n t f(%d n ,m=O&C=9)n+;c=getchar();)(1.6 分)0.0分正确答案第一空:c!=n我的答案:第一空:c!=n答案解析:10下面程序段的运行结果是:x=y=O;w h i l e(x 15)y+,x+=+y;printf(%d,y);(1.6 分)1.6分正确答案第一空:8我的答案:第一空:8答案解析:11下列程序片段功能是判断一个数是否为素数。int i,k,m;scanf(%d,&m);k=sq rt();for(i=2;i=k+l)printf(%dyesn,m);else printf(%dnon,m);)(1.6 分)0.8分正确答案第一 空:m第二 空:break我的答案:第一空:第二空:break答案解 析:12以
点击显示更多内容>>
收藏
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号