C语言题库C语言程序设计练习题

举报
资源描述
C语言程序设计练习题一、选择题.1二、填空题.28三、判断题.35四、程序填空.39五、程序改错.65六、程序设计.90一、选择题1、X,y,z被定义为int型变量,若从键盘给X,y,z输入数据,正确的输入语句是A.INPUT x、v、z;B.scanf(%d%d%d”,&x,&y,&z);C.scanf(%戚d%d”,x,y,z);D.read(%d%d%d”,&x,&y,&z);2、当用户要求输入的字符串中含有空格时,应使用的输入函数是(K_).A.scanf()B.getchar()C.gets()D.getc()3、关 于if后一对圆括号中的表达式,以下叙述中正确的是(D).A.只能用逻辑表达式 B.只能用关系表达式C.既可以用逻辑表达式也可以用关系表达式 D.可以用任意表达式4、以下语句的输出结果是(D).pr i ntf(%dn”,str Ien(t065xffn);A.5 B.14 C.8 D.输出项不合法,无正常输出5、若x是int型变量,y是float型变量,所用的scanf调用语句格式为:scanf(x=%d,y=%f,&x,&y);则为了将数据1 0和66.6分别赋给x和y,正确的输入应是(_A _).A.x=10,y=66.6 B,10 66.6 C.10 回车66.6 D.x=1(K回车 丫=66.66、若有说明:int 6、*p,m=5,n;以下正确的程序段是(2).A.p=&n;scanf(%d,&p);B.p=&n;s c a n f*p);C.scanf(%d,&n);*p=n;D.p=&n;*p=m;7、若在定义行:int a,b,c,*p=&c;之后,接着执行以下选项中的语句,则能正确给变量赋值的是(C).A.scanf(%d”,a,b,c);B.scanf(%d%d%d”,a,b,c);C.scanf(%d”,p);D.scanf(%d,&p);8、若执行下面的程序时,从键盘上输入5和2,则输出结果是(_C_).ma i n()i nt a,b,k;scanf(%d,%d”,&a,&b);k=a;i f(ab)k=a%b;eIse k=b%a;printf(,z%dn”,k);)A.5 B.3 C.2 D.19、若执行下述程序时,若从键盘输入6和8时,结果为(_B_).ma i n()i nt a,b,s;scanf(%d%d”,&a,&b);s=a,i f(ab?a+b:a-b);)A.9 B.1 C.10 D.无法确定20、以下叙述中正确的是(C).A.用C程序实现的算法必须要有输入和输出操作B.用C程序实现的算法可以没有输出但必须要有输入C.用C程序实现的算法可以没有输入但必须要有输出D.用C程序实现的算法可以既没有输入也没有输出21、有定义:int b;char c10;,则正确的输入语句是(B).A.scanf(%d%s”,&b,&c);B.scanf(%d%s”,&b,c);C.scanf(%d%s”,b,c);D.scanf(%d%s”,b,&c);22、有如下程序ma i n()float x=2.0,y;if(x0.0)y=0.0;eIse if(x=a&c =v&c B z )c=c-2 1 ;e I se p r i n t f C i n p u t e r r o r !n,z);p u t c h a r (c);1A.g B.w C.f D.d执行下列程序时输入:1 2 3 空格 4 5 6 7 8 9 回车)输出结果是(2).m a i n ()c h a r s 1 0 0 ;i n t c,i;sc a n f&c);sc a n f (d,&i);sc a n f s);p r i n t f (c,%d,%s n”,c,i,s);)A.1 2 3,4 5 6,7 8 9 B.1,4 5 6,7 8 9 C.1,2 3,4 5 6,7 8 9D.1,2 3,4 5 6当输入为qu e r t?时,下面程序的执行结果是(_ A _).#i n c I u d e st d i o.h m a i n ()c h a r c;c=g e t c h a r ();w h i l e(c!=?)p u t c h a r (c);c=g e t c h a r();)A.qu e r t B.R v f su C.qu e r t?D.r v f su?3 0、若变量已正确定义,则下面程序段的输出结果是(a).i=0;d o p r i n t f C%d,,z,i);w h i l e(i+);p r i n t f (%d r T,i);A.0.0 B.0,1 C.1,1 D.程序进入无限循环3 1、若有如下语句i n t x=3;d o p r i n t f (d n,x-=2);w h i l e(!(一 一x);则上面程序段(_ w).A.输出的是1 B.输出的是1和-2 C.输出的是3和0 D.是死循环43 2、设有程序段i n t k=1 0;w h i l e(k=0)k=k-1;下面描述中正确的是(C ).A.w h i I e循环执行1 0次一C.循环体语句一次也不执行3 3、设有程序段B.循环是无限循环D.循环体语句执行一次i n t k=1 0;w h i l e(k=0)k=k-1;则下面描述中正确的是A.w h i I e循环执行1 0次C.循环体语句一次也不执行B.循环是无限循环D.循环体语句执行一次3 4、设有以下程序m a i n ()i n t x=0,s=0;w h i I e (!x!=0)s+=+x;p r i n t f (%d”,s);则该程序的运行情况是(_ B _).A.运行程序后输出0 B.运行程序后输出C.程序中的控制表达式是非法的 D.程序执行无限次3 5、下列程序的输出结果是(旦).m a i n ()i n t i,a=0,b=0;f o r(i=1;i 1 0;i+)i f(i%2=0)a+;c o n t i n u e;b+;p r i n t f (a=%d,b=%d”,a,b);A.a=4,b=4B.a=4,b=5C.a=5,b=4D.a=5,b=53 6、下列说法中错误的是(_ L).A.只能在循环体内彳史用br eak语句B.在循环体内使用br eak语句可以使流程跳出本层循环体,从而提前结束本层循环C.在whi I e和dowhi I e循环中,continu e语句并没有使整个循环终止D.continu e的作用是结束本次循环,即跳过本次循环体中尚未执行的语句,接着再一次进行循环判断3 7、下面程序的运行结果是(旦).#i ncI u de std i o.hma i n()char a=mor ning”,t;int i,j=0;for (i=1;i 7;i+)if(aj ai)j=i;t=aj;aj=a7 ;a7=aj;p u ts(a);A.mr gn i nrC.mor i ngD.mor n i ng3 8、3 9、下面的表达式whil e(!x)中的表达式!x与下面条件(/_)等价.A.x=0 B.x=1 C.x=01|x=1 D.x!=0现有如下程序ma i n()int k 3 0=1 2,3 2 4,4 5,6,7 6 8,9 8,2 1,3 4,4 5 3,4 5 6);i nt cou nt=0,i=0;whiI e(k i)if(k i%2=0 II k i%5=0)cou nt+;4 0、i+;)“p r i ntf(%d,%dn”,cou nt,i);)则程序的输出结果为(2).A.7,8 B.8,8 C.7,1 0已知:D.8,1 04 1、4 2、4 3、int t=0;whil e(t=1).)则以下叙述正确的是(B ).A.循环控制表达式的值为0 B.循环控制表达式的值为1C.循环控制表达式不合法 D.以上说法都不对以下wh i I e循环中,循环体执行的次数是(_C _).k=1 ;whil e(-k)k=1 0;A.1 0次 B.无限次 C.1次 D.一次也不执行以下程序的输出结果是(_Q _).ma i n()int i ;for(i=0;i 3;i+)switch(i)case 0:p r intf i);case 2:p r intf i);defau l t:p r intf CW,i);)A.02 2 1 1 1 B.02 1 02 1 C.0001 2 2 D.01 2以下程序的输出结果是(/_)ma i n()int a,i;a=0;for(i=1;i 5;i+)switch(i)case 0:case 3:a+=2;case 1:case 2:a+=3;defau I t:a+=5;)p r i ntf(%dn”,a);)6A.3 1 B.1 3 C.1 0 D.2 04 4、以下程序的运行结果为(/_).ma i n()i nt m,n;for (m=0,n=1 0;m 6)n;p r intf r%dz,,n);)该程序的输出结果是(_W).A.9 87 B.87 6 C.87 6 5 D.9 87 64 9、有以下程序ma i n()i nt i,j,m=5 5;for(i=1;i 0&n 0;y-)if(y%3 0)p r intf(%d”,-y);程序的运行结果是(K_).A.7 4 1 B.9 6 3 C.85 2有以下程序:ma i n()int x=0,y=0,i ;for (i=1;+i)if(i%2=0)x+;continu e;if(i%5=0)y+;br eak;)p r intf C%d,%d,x,y);)程序的输出结果是(A).A.2,1 B.2,2 C.2,5有以下程序:ma i n()i nt i,s=1 ;for (i=1;i 5 0;i+)if(!(i%5)&!(i%3)s+=i;p r i ntf(%dn”,s);)程序的输出结果是(匕).A.4 09 B.2 7 7 C.1执行下列程序后,输出的结果是(_B _).ma i n()i nt x=9;D.2 3 5 6D.87 5 4 2 1D.5,2D.9 1do p r intf x-);whi l e(!x);A.8 B.9 C.陷入死循环 D.不输出任何内执行下面的程序后,a的值为(_D _).ma i n()i nt a,b;for(a=1,b=1;a=2 0)br eak;if(b%3=1)b+=3;cont i nu e;b-=5;8)A.7 B.8 C.9 D.1 05 6、定义如下变量和数组:j nt int x 3 3 =1,2,3,4,5,6,7,8.9);则下面语句的输出结果是(_C _)for(i=0;i 3;i+)p r intf(,z%d,z,x i 2-i);A.1 5 9 B.1 4 7 C.3 5 7 D.3 6 95 7、对以下说明语句的正确理解是(_1 _).int a1 0=6,7,8,9,1 0;A.将 5 个初值依次赋给a 1 至 a 5 B.将 5 个初值依次赋给a 0至a 4 C.将 5 个初值依次赋给a6 至 a1 0 D.因为数组长度与初值的个数不相同,所以此语句不正确5 8、若要对a 进行+运算,则 a 应具有下面(_J)说明.A.i nt a 3 2 ;B.char *a=l 2,ab;C.char (*a)3 ;D.int b1 0,b=*a;5 9、若有定义:int a 2 3;则对a 数组的第i行 第 j 歹 I(假设i,j 已正确说明并赋值)元素值的正确引用为(_L).A.*(*(a+i)+j)B.(a+i)j C.*(a+i+j)D.*(a+i)+j6 0、若有定义 i nt a 9,*p=a;贝 p+5 表示(_ _).A.数组元素a 5 的值 百 数 组 元 素 a 5 的地址C.数组元素a 6 的地址 D.数组元素a 0的值加上56 1、若有定义
展开阅读全文
温馨提示:
金锄头文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
相关搜索

当前位置:首页 > 商业/管理/HR > 营销创新


电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号