百科园C语言题库完整_第1页
百科园C语言题库完整_第2页
百科园C语言题库完整_第3页
百科园C语言题库完整_第4页
百科园C语言题库完整_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第一章1 .以下叙述中错误的是()B.C语言编写的每个函数都可以进行独立编译并执行2 .计算机高级语言程序的运行方法有编译执行和解释执行两种,以下叙述中正确的是()A.C语言程序仅可以编译执行3 .C语言规定:在一个源程序中,main的位置()A.可以任意4 .一个C语言程序是由()C.函数组成5 .以下关于结构化程序设计的叙述中正确的是()B.c语言中,程序的模块化是利用函数实现的6 .以下叙述正确的是()C.c语言本身没有输入和输出语句7 .以下叙述中错误的是()A.C语言编写的每个函数都可以进行独立编译并执行8 .以下叙述正确的是()B.c程序中注释部分可以单独占一行9 .以下叙述正确的

2、是()D.c语言函数可以嵌套调用,如fun(fun(x)10 .一个C程序的执行是从()D.本程序main函数开始,至Umain函数结束11.以下叙述不正确的是()A.在c程序中,注释说明只能位于一条语句后面第二章单项选择1以下选项中非法的字符常量是()(B/019')2设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为()(Cdouble)3判断字符型变量ci是否为数字字符的正确表达式为()(A(C1>=0')&&(C1<=9)4若有定义语句:intk1=10,k2=20;,执行表达式(k1=k1&g

3、t;k2)&&(k2=k2>k1)后,k1和k2的值分别为()(B0和20)5下面四个选项中,均是不合法的用户标识符的选项是()。(Bb-agotoint)6判断字符型变量c1是否为小写字母的正确表达式为()。(B(c1>=a)&&(c1<='z)7表达式18/4*sqrt(4.0)/8值的数据类型为()。(Bdouble)8下面四个选项中,均是合法的用户标识符的选项是()。(A-123tempINT)9若a是数值类型,则逻辑表达式(a=1)|(a!=1)的值是()(D1)10假设所有变量均为整型,则表达式(a=2,b=5,b+,a+b

4、)的值是()。(B8)11以下选项中关于C语言常量的叙述错误的是:()(D经常被使用的变量可定义为常量)12若x,i,j和k都是int型变量,则计算表达式x=(i=4,j=16,k=32)后,x的值为()。(B32)13下面正确的字符常量是()(BW)14在C语言中,要求运算数必须是整型的运算符是()(A%)15以下关于C语言数据类型使用的叙述中错误的是()(B若只处理真'和彳酎两种逻辑值,应使用逻辑类型)16以下选项中,能表示逻辑值"假"的是()(B0)17c语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符()(D必须为字母或下划线)18在C语言中

5、,char型数据在内存中的存储形式是()。(CASCLL码)19下列表达式中,不满足"当x的值为偶数时值为真,为奇数时值为假”的要求的是()(C!(x%=0)20设:inta=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>d)后n的值为()。(C2)3ae21若有数学式bc则不正确的C语言表达式是()(A3*a*e/b*c)第三章程序改错1/*下列给定程序中,函数fun的功能是:计算S=f(-n)+f(-n+1)+f(0)+f(1)+f(2)+f(n)的值。例如,当n为5时,函数值应为10.407143。f(x)函数定义如下(

6、x1)(x2)x00x0或x2f(x)=(x1)(x2)请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构试题程序:*/#include<stdlib.h>#include<stdio.h>#include<math.h>/*ERROR*/f(doublex)(if(x=0.0|x=2.0)return0.0;elseif(x<0.0)return(x-1)/(x-2);elsereturn(x+1)/(x-2);)doublefun(intn)(inti;doubles=0.0,y;for(i=

7、-n;i<=n;i+)y=f(1.0*i);s+=y;/*ERROR*/returnsvoidmain()printf("%lfn",fun(5);参考答案doublef(doublex)returns;2./*下列给定程序中,函数fun的功能是:求三个数的最小公倍数。例如,给变量x1、x2、x3分别输入15、11、2,则输出结果应当是330。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:*/#include<stdio.h>intfun(intx,inty,intz)intj,t,n

8、,m;/*ERROR*/j=1;t=m=n=1;/*ERROR*/while(t!=0&&m!=0&&n!=0)j=j+1;t=j%x;m=j%y;n=j%z;returnj;voidmain()intx1,x2,x3,j;printf("Inputx1x2x3:");scanf("%d%d%d",&x1,&x2,&x3);printf("x1=%d,x2=%d,x3=%dn",x1,x2,x3);j=fun(x1,x2,x3);printf("Theminimalco

9、mmonmultipleis:%dn",j);参考答案j=0;while(t!=0|m!=0|n!=0)3/*下列程序中函数fun的功能是:计算正整数num各位上的数字之积。例如,若输入252,则输出应该是20。若输入202,则输出应该是0。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构试题程序:*/#include<stdio.h>#include<conio.h>longfun(longnum)(/*ERROR*/longk;do(k*=num%10;/*ERROR*/num=10;while(n

10、um);return(k);voidmain()(intn;printf("Pleaseenteranumber:");scanf("%ld",&n);printf("n%ldn",fun(n);参考答案longk=1;num/=10;4/*下列给定程序中,函数fun()的功能是:根据整型形参m的值,计算如下公式的值:t=1-1/(22)1/(33)1/(mm)请改正函数fun()中的错误,使它能得出正确的结果注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:*/#include<stdlib.

11、h>#include<stdio.h>doublefun(intm)doubley=1.0;inti;/*ERROR*/for(i=2;i<m;i+)/*ERROR*/y-=1/(i*i);return(y);)voidmain()intn=5;printf("nTheresultis%1fn",fun(n);)参考答案for(i=2;i<=m;i+)y-=1.0/(i*i);5/*下列给定的程序中,函数fun的功能是:计算并输出k以内最大的10个能被13或17整除的自然数之和。k的值由主函数传入若k的值为500,则函数的值为4622。请改正程

12、序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:*/#include<stdio.h>#include<stdlib.h>intfun(intk)intm=0,mc=0,j;while(k>=2)&&(mc<10)/*ERROR*/if(k%13=0)|(k%17=0)m=m+k;mc+;k-;/*ERROR*/)returnm;voidmain()printf("%dn",fun(500);参考答案if(k%13=0)|(k%17=0)6注意:不要改动main

13、函数,不得增行或删行,也不得更改程序的结构试题程序:*/#include<stdlib.h>#include<conio.h>#include<stdio.h>doublefun(intm)doublet=1.0;inti;for(i=2;i<=m;i+)/*ErrOr*/t+=1.0/k;/*ERROR*/returni;)voidmain()intm;printf("nPleaseenter1integernumber:");scanf("%d",&m);printf("nTheresult

14、is%1fn",fun(m);)参考答案t+=1.0/i;returnt;7./*下列给定程序中函数fun的功能是计算n!。例如,给n输入5,则输出120.000000。请改正程序中的错误,使程序能输出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:*/#include<stdio.h>#include<conio.h>doublefun(intn)doubleresult=1.0;/*ERROR*/ifn=0return1.0;while(n>1&&n<170)/*ERROR*/result

15、=n-;returnresult;voidmain()intn;printf("InputN:");scanf("%d",&n);printf("nn%d!=%lfn",n,fun(n);参考答案if(n=0)result*=n-;8/*下列给定程序中,函数fun的功能是:判断一个整数m是否是素数,若是返回1,否则返回0。在main函数中,若fun()返回1则输出"YES",若fun()返回0则输出"NO!"。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行

16、或删行,也不得更改程序的结构。试题程序:*/#include<stdlib.h>#include<stdio.h>intfun(intm)intk=2;while(k<=m&&(m%k)/*ErrOr*/k+/*ERROR*/if(m=k)return1;elsereturn0;voidmain()intn;printf("nPleaseentern:");scanf("%d",&n);if(fun(n)printf("YESn");elseprintf("NO!n&qu

17、ot;);参考答案k+;if(k=m)程序填空11212312341-1/*已知如下公式:23353573579下面程序的功能使根据上述公式输出满足精度要求的eps的值,请填空使程序完整。*/#include<stdio.h>#include<math.h>intmain()doubles=0.0,eps,t=1.0;intn;scanf("%lf",&eps);for(n=1;t>=fabs(eps);n+)s+=t;/*FILL*/t=1/*FILL*/21return0;参考答案t*n/(2*n+1)printf("%l

18、fn",2*s)2/*请补充main函数,该函数的功能是:打印出满足个位的数字、十位上的数字和百位上的数字都相等的所有三位数。本题的结果为:111222333444555666777888999。注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在main函数的横线上填入所编写的若干表达式或语句。试题程序:*/#include<stdlib.h>#include<stdio.h>voidmain()intg,s,b;for(g=1;g<10;g+)for(s=1;s<10;s+)for(b=1;b<10;b+)/*FIL

19、L*/if()/*FILL*/printf("%5d",);参考答案g=s&&s=bg+s*10+b*1003/*请补充main函数,该函数的功能是:打印出1-1000中满足个位数字的立方等于其本身所有数。本题的结果为:164125216729注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数main的横线上填入所编写的若干表达式或语句。试题程序:*/#include<stdlib.h>#include<stdio.h>voidmain()inti,g;for(i=1;i<1000;i+)/*FILL

20、*/g=1/*FILL*/if(2)printf("%4d",i);参考答案g=i%10;if(g*g*g=i)4/*函数fun的功能是:从三个形参a、b、c中找出中间的数,作为函数值返回。例如,当a=3,b=5,c=4时,中间的数为4。注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。试题程序:*/#include<stdio.h>intfun(inta,intb,intc)intt;/*FILL*/t=(a>b)?(b>c?b:(a>c?c:D)/*FILL*/:(a&

21、gt;c)?2/*FILL*/:(b>c)?c:31);returnt;voidmain()inta1=3,a2=5,a3=4,r;r=fun(a1,a2,a3);printf("nThemiddlenumberis:%dn",r);)参考答案t=(a>b)?(b>c?b:(a>c?c:a):(a>c)?a:(b>c)?c:b);5/*给定程序的功能是:求二分之一圆面积,函数通过形参得到圆的半径,函数返回二分之一的圆面积(注:圆面积公式为:Sr2,在程序中定义的变量名要与公式的变量相同)。例如,输入圆的半径值:19.527,输出为:s=5

22、98.949991。注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在横线上填入所编写的若干表达式或语句。试题程序:*/#include<stdio.h>doublefun(doubler)/*FILL*/return3.14159*1/2.0;)voidmain()doublex;printf("Enterx:");/*fill*/scanf("%lf",2);/*fill*/printf("s=%lfn",fun(3);)参考答案return3.14159*r*r/2.0;scanf("

23、;%lf",&x);printf("s=%lfn",fun(x);6例如,在主函数中从键盘给n输入30后,输出为:s=1.226323。注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。试题程序:*/#include<stdio.h>doublefun(intn)inti;doublesum=0.0;/*F|LL*/for(i=1;1;i+)/*F|ll*/if(i%3=02i%7=0)/*F|ll*/sum+=3/i;returnsum;voidmain()(intn;d

24、oubles;printf("nInputn:");scanf("%d",&n);s=fun(n);printf("nns=%fn",s);参考答案for(i=1;i<=n;i+)if(i%3=0|i%7=0)sum+=1.0/i;7/*请补充main函数,该函数的功能是:计算两个自然数n和m(m<10000)之间所有数的和(n和m从键盘输入)。例如,当n=1,m=100时,sum=5050;当n=100,m=1000时,sum=495550。注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅

25、在main函数的横线上填入所编写的若干表达式或语句。试题程序:*/#include<stdlib.h>#include<stdio.h>voidmain()(intn,m;longsum;/*FILL*/1printf("nInputn,mn");scanf("%d,%d",&n,&m);while(n<=m)/*FILL*/2n+;/*FILL*/printf("sum=%3n",sum);参考答案sum=0;sum+=n;ld8/*请补充函数fun,该函数的功能是:判断某一个年份是否为

26、闰年例如,1900年不是闰年,2004是闰年。注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。试题程序:*/#include<stdlib.h>#include<stdio.h>intfun(intn)intflag=0;if(n%4=0)/*FILL*/if(_1Jflag=1;/*FILL*/if(2)flag=1;/*FILL*/return3)voidmain()(intyear;printf("Inputtheyear:");scanf("%d",

27、&year);if(fun(year)printf("%disaleapyear.n",year);elseprintf("%disnotaleapyear.n",year);)参考答案if(n%100!=0)if(n%400=0)returnflag;程序设计(无答案)1/*请编写函数fun,它的功能是:计算并输出n(包括n)以内所有能被5或9整除的自然数的倒数之和。例如,若主函数从键盘给n输入20后,则输出为s=0.583333。注意:n的值要求不大于100。部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括

28、号中填入所编写的若干语句试题程序:*/#include<stdio.h>doublefun(intn)(/*Begin*/*End*/)voidmain()intn;doubles;FILE*out,*in;printf("nInputn:");scanf("%d",&n);s=fun(n);printf("nns=%fn",s);/*/in=fopen("in34.dat","r");out=fopen("out34.dat","w"

29、);fscanf(in,"%dn",&n);fprintf(out,"%fn",fun(n);fscanf(in,"%dn",&n);fprintf(out,"%fn",fun(n);fclose(out);/*/2/*请编写函数fun,该函数的功能是:计算并输出S=1+(1+20.5)+(1+20.5+30.5)+(1+20.5+30.5+n0.5)例如,若主函数从键盘给n输入20后,则输出为S=534.188884。注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数f

30、un的花括号中填入所编写的若干语句试题程序:*/#include<math.h>#include<stdio.h>doublefun(intn)/*Begin*/*End*/)voidmain()(FILE*wf,*in;intn;doubles;printf("nnInputn:");scanf("%d",&n);s=fun(n);printf("nns=%fnn",s);/*/in=fopen("in32.dat","r");wf=fopen("ou

31、t32.dat","w");fscanf(in,"%dn",&n);fprintf(wf,"%fn",fun(20);fscanf(in,"%dn",&n);fprintf(wf,"%fn",fun(40);fclose(in);fclose(wf);/*/3/*请编写函数fun,其功能是计算并输出如下多项式的值:Sn=l+1/1!+1/2!+1/3!+1/4!+-+1/n!例如,若主函数从键盘给n输入15,则输出为S=2.718282。注意:n的值要求大于1但不大于1

32、00。部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句试题程序:*/#include<stdio.h>doublefun(intn)()voidmain()(intn;doubles;FILE*out,*in;printf("nInputn:");scanf("%d",&n);s=fun(n);printf("s=%fn",s);/*/in=fopen("in31.dat","r");out=fopen("

33、out31.dat","w");fscanf(in,"%dn",&n);fprintf(out,"%fn",fun(n);fscanf(in,"%dn",&n);fprintf(out,"%fn",fun(n);fclose(in);fclose(out);/*)4/*编写函数fun,它的功能是:计算和输出下列级数的和。S=1/(1x2)+1/(2x3)+.1/(nx(n+1),例如,当n=10时,函数值为0.909091。注意:部分源程序给出如下。请勿改动main函数

34、和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。试题程序:*/#include<stdio.h>#include<stdlib.h>doublefun(intn)(/*Begjn*/*£巾*/)voidmain()(FILE*wf,*in;intn;printf("%fn",fun(10);/*/wf=fopen("out40.dat","w");in=fopen("in40.dat","r");fscanf(in,"%dn&qu

35、ot;,&n);fprintf(wf,"%fn",fun(n);fclose(in);fclose(wf);/*/5/*请编写函数fun,其功能是:计算并输出3到n之间所有素数的平方根之和。例如,若主函数从键盘给n输入100后,则输出为sum=148.874270。注意:n的值要大于2但不大于100。部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句试题程序:*/#include<stdio.h>#include<math.h>doublefun(intn)/*Begin*/*End*

36、/voidmain()intn;doublesum;FILE*out,*in;printf("InputN=");scanf("%d",&n);sum=fun(n);printf("nnsum=%fnn",sum);/*/in=fopen("in36.dat","r");out=fopen("out36.dat","w");fscanf(in,"%dn",&n);fprintf(out,"%fn",f

37、un(n);fclose(in);fclose(out);/*/6/*请编写一个函数unsignedfun(unsignedw),w是一个大于10的无符号整数,若w是n(n>=2)位的整数,则函数求出w的后n-1位的数作为函数值返回例如,w值为5923,则函数返回923;若w值为923,则函数返回23。注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句试题程序:*/#include<stdio.h>#include<stdlib.h>unsignedfun(unsignedw)/*Begin*/*En

38、d*/)voidmain()(FILE*wf,*in;unsignedx;printf("Enteraunsignedintegernumber:");scanf("%u",&x);printf("Theoriginaldatais:%un",x);if(x<10)printf("Dataerror!");elseprintf("Theresult:%un",fun(x);/*/in=fopen("in35.dat","r");wf=fope

39、n("out35.dat","w");fscanf(in,"%u",&x);fprintf(wf,"%u'n",fun(x);fscanf(in,"%u",&x);fprintf(wf,"%u'n",fun(x);fclose(in);fclose(wf);/*/)7/*请编写函数fun,它的功能是:求Fibonacci数列中大于t(t>3)的最小数,结果由函数返回。其中Fibonacci数列F(n)的定义为:F(0)=0,F(1)=1F

40、(n)=F(n-1)+F(n-2)假如:当t=1000时,函数值为1597。注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句试题程序:*/#include<math.h>#include<stdio.h>intfun(intt)/*Begin*/*End*/voidmain()intn;FILE*out,*in;n=1000;printf("n=%d,f=%dn",n,fun(n);/*/in=fopen("in39.dat","r");out=

41、fopen("out39.dat","w");while(!feof(in)fscanf(in,"%dn",&n);fprintf(out,"%dn",fun(n);fclose(in);fclose(out);/*/8/*请编写函数fun,其功能是:计算并输出下列多项式值。S=(1-1/2)+(1/3-1/4)+(1/(2n-1)-1/2n)例如,若主函数从键盘给n输入8后,则输出为S=0.662872。注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入所编

42、写的若干语句试题程序:*/#include<stdio.h>doublefun(intn)/*Begin*/*End*/voidmain()FILE*wf,*in;intn;doubles;printf("nInputn:");scanf("%d",&n);s=fun(n);printf("ns=%fn",s);/*/in=fopen("in42.dat","r");wf=fopen("out42.dat","w");fscanf(in

43、,"%dn",&n);fprintf(wf,"%fn",fun(10);fclose(in);fclose(wf);*9/*请编写一个函数fun,它的功能是:根据以下公式求的值(要求满足精度0.005,即某项小于0.005时停止迭代)。/2=1+1/3+1*2/(3*5)+1*2*3/(3*5*7)+1*2*3*4/(3*5*7*9)+-+1*2*3*n/(3*5*7*-*(2n+1)程序运行后,如果输入精度0.005,则程序输出3.137130o注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入所

44、编写的若干语句。试题程序:*/#include<stdio.h>#include<conio.h>#include<math.h>doublefun(doubleeps)/*Begin*/*End*/voidmain()doublex;FILE*wf,*in;printf("Inputeps:");scanf("%lf",&x);printf("neps=%lf,PI=%lfn",x,fun(x);/*/in=fopen("in37.dat","r")

45、;wf=fopen("out37.dat","w");fscanf(in,"%lf",&x);fprintf(wf,"%lfn",fun(x);fclose(in);fclose(wf);*10/*请编写函数fun,它的功能是计算下列级数和,和值由函数值返回。S=1+x+x2/2!+x3/3!+xn/n!例如,当n=10,x=0.3时,函数值为1.349859。注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句试题程序:*/#include&l

46、t;stdio.h>#include<math.h>doublefun(doublex,intn)/*Begin*/*End*/voidmain()FILE*wf,*in;doublex;intn;printf("%f",fun(0.3,10);/*/in=fopen("in38.dat","r");wf=fopen("out38.dat","w");fscanf(in,"%lf%dn",&x,&n);fprintf(wf,"%fn

47、",fun(x,n);fclose(in);fclose(wf);*第四章单项选择1下面的程序片断所表示的数学函数关系是(A)y=-1;if(x!=0)y=1;if(x>0)y=1;elsey=0;2以下程序的执行结果是main()(C.1)intx=0,s=0;while(!x!=0)s+=+x;printf("%d",s);3在下述程序中,判断i>j共执行了多少次(C.6)#include<stdio.h>main()inti=0,j=10,k=2,s=0;for(;)i+=k;if(i>j)printf("%dn&qu

48、ot;,s);break;s+=i;4以下程序段的输出结果是(C.20)inti,j,m=0;for(i=1;i<=15;i+=4)for(j=3;j<=19;j+=4)m+;printf("%dn",m);5执行下列语句后的输出为()(C,*)intj=-1;if(j<=1)printf("*n");elseprintf("%n");6以下for循环的执行次数是for(x=0,y=0;(y=123)&&(x<4);x+);(A.4次)7下列程序的输出结果是(A,a=2,b=1)main()(i

49、ntx=1,y=0,a=0,b=0;switch(x)(case1:switch(y)(case0:a+;break;case1:b+;break;)case2:a+;b+;break;case3:a+;b+;break;)printf("a=%d,b=%dn",a,b);8以下程序的执行结果是_(A.1,2,3,)main()intnum=0;while(num<=2)num+;printf("%d,",num);9inta=1,b=2,c=3;if(a>b)a=b;if(a>c)a=c;贝Ua的值为(A.1)10有以下程序main(

50、)inti;for(i=0;i<3;i+)switch(i)case1:printf("%d",i);case2:printf("%d",i);default:printf("%d",i);)执行后输出结果是(A.011122)11下列程序的输出结果是()。main()intx=1,y=0,a=0,b=0;switch(x)case1:switch(y)case0:a+;break;case1:b+;break;)case2:a+;b+;break;case3:a+;b+;break;)printf("a=%d,b=%

51、dn",a,b);(A.a=2,b=1)AbCdEf)12有以下程序,程序运行后的输出结果是(D#include<stdio.h>intmain()charb,c;inti;b='a'c='A'for(i=0;i<6;i+)if(i%2)putchar(i+b);elseputchar(i+c);)printf("n");return0;13以下程序的输出结果是(A.2870)main()intx,i;for(i=1;i<=100;i+)x=i;if(+x%2=0)if(+x%3=0)if(+x%7=0)pr

52、intf("%d,x);)printf(n”);)14有如下程序main()floatx=2.0,y;if(x<0.0)y=0.0;elseif(x<10.0)y=1.0/x;elsey=1.0;printf("%fn",y);该程序的输出结果是(A.0.500000)15有以下程序main()inti=1,j=1,k=2;if(j+|k+)&&i+)printf("%d,%d,%dn",i,j,k);执行后输出结果是(A2,2,2)16 .假定所有变量均已正确定义,下列程序段运行后x的值是()(D,4)k1=1;k

53、2=2;k3=3;x=15;if(!k1)x-;elseif(k2)x=4;elsex=3;17 .以下程序段的输出结果是(B.1-2)intx=3;dopritnf("3d2);,xwhile(!(-x);18 .有以下程序,若想从键盘上输入数据,使变量m中的值为123,n中的值为456,p中的值为789,则正确的输入是(B.m=123n=456p=789)(中间无空格)#include<stdio.h>intmain()intm,n,p;scanf("m=%dn=%dp=%d",&m,&n,&p);printf("

54、%d%d%dn",m,n,p);return0;19以下程序中,while循环的循环次数是()(A死循环不能确定次数)main()inti=0;while(i<10)if(i<1)continue;if(i=5)break;i+;20设有定义:inta=1,b=2,c=3;以下语句中执行效果与其它三个不同的是()(Dif(a>b)c=a;a=b;b=c;)21为了避免在嵌套的条件语句if-else中产生二义性,C语言规定:else子句总是与()配对。(B其之前最近的if)22以下叙述正确的是:(c)(用do-while构成循环时,只有在while后的表达式为零时结束

55、循环)23有如下程序main()intx=1,a=0,b=0;switch(x)case0:b+;case 1: a+;case 2: a+;b+;)printf("a=%d,b=%dn",a,b);)(Ba=2,b=1)24运行以下程序后,输出的结果是main()intk=-3;if(k<=0)printf("*n");elseprintf("&&&&n");(A*)25inta=1,b=2,c=3;if(a>c)b=a;a=c;c=b;贝1Jc的值为()(B2)26在C语言中,为了结束由while语句构成的循环,while后一对圆括号中表达式的值应该为()。(B0)27设a、b和c都是int变量,且a=3,b=4,c=5;则以下的表达式中,值为0的表达式是C!(a<b)&&!c|1)28假定所有变量均已

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论