湖南省对口升学C语言第二次测试题(3-4章)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

对口8班2016年第二次测试题(3-4章)姓名:一、选择题(30×6=180)1.在C程序中,判逻辑值时,用“非0”表示逻辑值“真”,又用“0”表示逻辑值“假”。在求逻辑值时,用()表示逻辑表达式值为“真”,又用()表示逻辑表达式值为“假”。A)10B)01C)非0非0D)112.已知intx=6,y=2,z;则执行表达式z=x=xy后,变量z的值为A)0B)1C)4D)53.能正确表示逻辑关系:“a≥10或a≤0”的C语言表达式是A)a=10ora=0B)a=0|a=10C)a=10&&a=0D)a=10‖a=04.若变量c为char类型,能正确判断出c为小写字母的表达式是A)′a′=c=′z′B)(c=′a′)||(c=′z′)C)(′a′=c)and(′z′=c)D)(c=′a′)&&(c=′z′)5.设intx=1,y=1;表达式(!x||y--)的值是A)0B)1C)2D)-16.有如下程序段inta=14,b=15,x;charc=′A′;x=(a&&b)&&(c′B′);执行该程序段后,x的值为A)tureB)falseC)0D)17.以下程序的输出结果是main(){inta=4,b=5,c=0,d;d=!a&&!b||!c;printf(%d\n,d);}A)1B)0C)非0的数D)-18.设有:inta=1,b=2,c=3,d=4,m=2,n=2;执行(m=ab)&&(n=cd)后n的值是A)1B)2C)3D)49.已知x,y,z均为整型变量,且值均为1,则执行语句++x||++y&&++z;后,表达式x+y的值为A)1B)2C)3D)410.表达式aA)||B)&C)D)()11.若运行时给变量x输入12,则以下程序的运行结果是main(){intx,y;scanf(%d,&x);y=x12?x+10:x-12;printf(%d\n,y);}A)0B)22C)12D)1012.已知charch=′C′;则以下表达式的值是ch=(ch=′A′&&ch=′Z′)?(ch+32):ch;A)AB)aC)ZD)c13.若有条件表达式(exp)?a++:b--,则以下表达式中能完全等价于表达式(exp)的是A)(exp==0)B)(exp!=0)C)(exp==1)D)(exp!=1)14.有以下程序main(){inti=1,j=1,k=2;if((j++||k++)&&i++)printf(%d,%d,%d\n,i,j,k);}执行后输出结果是A)1,1,2B)2,2,1C)2,2,2D)2,2,315.请阅读以下程序:main(){inta=5,b=0,c=0;if(a=b+c)printf(***\n);elseprintf($$$\n);}以上程序A)有语法错不能通过编译B)可以通过编译但不能通过连接C)输出***D)输出$$$16.若执行下述程序时,若从键盘输入6和8时,结果为main(){inta,b,s;scanf(%d%d,&a,&b);s=a;if(as=b;s*=s;printf(%d,s);}A)36B)64C)48D)以上都不对17.有如下程序main(){floatx=2.0,y;if(x0.0)y=0.0;elseif(x10.0)y=1.0/x;elsey=1.0;printf(%f\n,y);}该程序的输出结果是A)0.000000B)0.250000C)0.500000D)1.00000018.以下4个选项中,不能看做一条语句的是A);B)a=5,b=2.5,c=3.6;C)if(a5);D)if(b!=5)x=2;y=6;19.若intk=8;则执行下列程序后,变量k的正确结果是main(){intk=8;switch(k){case9:k+=1;case10:k+=1;case11:k+=1;break;default:k+=1;}printf(%d\n,k);}A)12B)11C)10D)920.阅读如下程序段#includestdio.hmain(){inta=45,b=40,c=50,d;d=a30?b:c;switch(d){case30:printf(%d,,a);case40:printf(%d,,b);case50:printf(%d,,c);default:printf(#);}}则输出的结果是A)40,50,B)50,#C)40,#D)40,50,#21.现有如下程序段,此程序段编译有错误,则程序段的错误出在#includemain(){inta=30,b=40,c=50,d;d=a30?b:c;switch(d){casea:printf(%d,,a);caseb:printf(%d,,b);casec:printf(%d,,c);default:printf(#);}}A)default:printf(#);这个语句B)d=a30?b:c;这个语句C)casea:printf(%d,,a);caseb:printf(%d,,b);casec:printf(%d,,c);这三个语句D)switch(d)这个语句22.设有程序段intk=10;while(k=0)k=k-1;这下面描述中正确的是_________.A)while循环执行10次B)循环是无限循环C)循环体语句一次也不执行D)循环体语句执行一次23.语句while(!E);中的表达式!E等价于________.A)E==0B)E!=1C)E!=0D)E==124.下面程序的运行结果是___.#includestdio.hmain(){intnum=0;while(num=2){num++;printf(%d\n,num);}}A)1B)1C)1D)122233425.以下程序段________.x=-1;do{x=x*x;}while(!x);A)是死循环B)循环执行二次C)循环执行一次D)有语法错误26.若有如下语句intx=3;do{printf(%d\n,x-=2);}while(!(--x));则上面程序段______.A)输出的是1B)输出的是1和-2C)输出的是3和0D)是死循环27.下面程序的运行结果是______.#includestdio.hmain(){inty=10;do{y--;}while(--y);printf(%d\n,y--);}A)-1B)1C)8D)028.若i为整型变量,则以下循环执行次数是_____.for(i=2;i==0;)printf(%d,i--);A)无限次B)0次C)1次D)2次29.执行语句for(i=1;i++4;);后变量i的值是______.A)3B)4C)5D)不定30.有以下程序main(){charb,c;inti;b='a';c='A';for(i=0;i6;i++){if(i%2)putchar(i+b);elseputchar(i+c);}printf(\n);}程序运行后的输出结果是______.A)ABCDEFB)AbCdEfC)aBcDeFD)abcdef二、填空题(20×6=120)1.设y是int型,请写出y为奇数的关系表达式【1】。2.设inta=5,b=6,表达式(++a==b--)?++a:--b的值是【2】。3.将以下程序写成三目运算表达式是【3】。if(ab)max=a;elsemax=b;4.以下程序输出的结果是【4】。main(){inta=5,b=4,c=3,d;d=(abc);printf(%d\n,d);}5.若从键盘输入58,则以下程序输出的结果是【5】。main(){inta;scanf(%d,&a);if(a50)printf(%d,a);if(a40)printf(%d,a);if(a30)printf(%d,a);}6.阅读下面语句,则程序的执行结果是【6】。#includestdio.hmain(){inta=-1,b=1,k;if((++a0)&&!(b--=0))printf(%d,%d\n,a,b);elseprintf(%d,%d\n,b,a);}7.阅读下面程序,则在执行时候的输出为【7】。#includestdio.hmain(){intx=1,y=2,z=0;if(x=2)z=x,x=y,y=z;printf(%d,%d\n,x,y);}8.以下程序的输出结果是【8】。main(){intx=100,a=10,b=20,ok1=5,ok2=0;if(aelseif(ok2)x=10;elsex=-1;printf(%d\n,x);}9.阅读下面的程序,当程序在执行时,如果输入的是′A′,则输出结果为【9】。#includestdio.hmain(){chara;a=getchar();switch(a){case65:printf(%c,′A′);case66:printf(%c,′B′);default:printf(%s\n,other);}}10.下面程序段是从键盘输入的字符中统计数字字符的个数,用换行符结束循环。请填空。intn=0,c;c=getchar();while(_【10】___){if(_【11】_)n++;c=getchar();}11.下面程序的功能是用辗转相除法求两个正整数的最大公约数。请填空。#includestdio.hmain(){intr,m,n;scanf(%d%d,&m,&n);if(mn)_【12】_r=m%n;while(r){m=n;n=r;r=__【13】____;}printf(%d\n,n);}12.下面程序的运行结果是___【14】____.#includestdio.hmain(){inta,s,n,count;a=2;s=0;n=1;count=1;while(count=7){n=n*a;s=s+n;++count;}printf(s=%d,s);}13.下面程序段的运行结果是__【15】____.i=1;a=0;s=1;do{a=a+s*i;s=-s;i++;}while(i=10);printf(a=%d,a);14.下面程序段的运行结果是__【16】____.i=1;s=3;do{s+=i++;if(s%7==0)continue;else++i;}while(s15);printf(%d,i);15.以下程序实现:输入两个整数,按从大到小顺序输出。main(){intx,y,z;Scanf(”%d,%d”,&x,&y);if(【17】){z=x;【18】;}printf(”%d,%d”,x,y);}16.有1020个西瓜,第一天卖一半多两个,以后每天卖剩下的一半多两个,问几天以乏能卖完?请填空。#includestdio.hmain(){intday,x1,x2;day=0;xl=1020;while(【19】)·{x2=【20】;xl=x2;day++;)printf(”day=%d\n,day);}三、编程题1、输入所有的水仙花数:(例如153=13+53+33)2、找出1900年---2016年中所有的润年(判断润年的方法:能被4整除但不能被100整除或者能被400整除)答题卡姓名:最后得分:一、选择题:二、填空题:1234567891011121314151617181920三、编程题:1:2:

1 / 11
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功