百科园C语言题库(共112页).doc
《百科园C语言题库(共112页).doc》由会员分享,可在线阅读,更多相关《百科园C语言题库(共112页).doc(112页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
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.
2、c程序中注释部分可以单独占一行9. 以下叙述正确的是( )D.c语言函数可以嵌套调用,如fun(fun(x)10. 一个C程序的执行是从( ) D.本程序main函数开始,到main函数结束11. 以下叙述不正确的是( )A在c程序中,注释说明只能位于一条语句后面第二章单项选择1以下选项中非法的字符常量是( )(B /019)2设变量a是整型,f是实型,i是双精度型,则表达式10+a+i*f值的数据类型为( )(C double)3判断字符型变量c1是否为数字字符的正确表达式为( )(A (C1=0)&(C1k2)&(k2=k2k1)后,k1和k2的值分别为 ( )(B 0和20)5下面四个选
3、项中,均是不合法的用户标识符的选项是( )。(B b-a goto int)6判断字符型变量c1是否为小写字母的正确表达式为( )。(B (c1=a)&(c1b) & (n=cd)后n的值为( )。(C 2)21若有数学式,则不正确的C语言表达式是( )(A 3*a*e/b*c) 第三章程序改错1/*下列给定程序中,函数fun的功能是:计算S=f(-n)+f(-n+1)+f(0)+f(1)+f(2)+f(n)的值。 例如,当n为5时,函数值应为10.。f(x)函数定义如下: f(x)= 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构
4、。 试题程序: */#include #include #include /*ERROR*/f(double x) if(x=0.0|x=2.0) return 0.0; else if(x0.0) return(x-1)/(x-2); else return(x+1)/(x-2);double fun(int n) int i; double s=0.0,y; for(i=-n; i=n;i+) y=f(1.0*i); s+=y;/*ERROR*/ return svoid main() printf(%lfn, fun(5);参考答案double f(double x) return s;
5、2./*下列给定程序中,函数fun的功能是:求三个数的最小公倍数。例如,给变量x1、x2、x3分别输入15、11、2,则输出结果应当是330。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序: */#include int fun(int x,int y,int z) int j,t,n,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; return j;void main() int x1,x2,x3,
6、j; printf(Input x1 x2 x3: ); scanf(%d%d%d,&x1,&x2,&x3); printf(x1=%d,x2=%d,x3=%d n,x1,x2,x3); j=fun(x1,x2,x3); printf(The minimal common multiple is: %dn,j);参考答案 j=0; while (t!=0 | m!=0 | n!=0) 3/*下列程序中函数fun的功能是:计算正整数num各位上的数字之积。例如,若输入252,则输出应该是20。若输入202,则输出应该是0。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,
7、不得增行或删行,也不得更改程序的结构。 试题程序:*/#include #include long fun(long num)/*ERROR*/ long k; do k *=num%10;/*ERROR*/num =10; while(num); return(k);void main() int n; printf(Please enter a number: ); scanf(%ld,&n); printf(n%ldn,fun(n);参考答案 long k=1; num/=10;4/*下列给定程序中,函数fun()的功能是:根据整型形参m的值,计算如下公式的值: 请改正函数fun()中的
8、错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序: */#include #include double fun(int m)double y=1.0; int i;/*ERROR*/ for(i=2;im;i+) /*ERROR*/ y-=1/(i*i); return(y);void main()int n=5; printf(nThe result is %1fn, fun(n);参考答案 for(i=2;i=m;i+) y-=1.0/(i*i);5/*下列给定的程序中,函数fun的功能是:计算并输出k以内最大的10个能被13或17整
9、除的自然数之和。k的值由主函数传入,若k的值为500,则函数的值为4622。 请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:*/#include #include int fun(int k) int m=0,mc=0, j; while(k=2)&(mc10) /*ERROR*/ if(k%13=0)|(k%17=0) m=m+k;mc+; k-;/*ERROR*/ ) return m;void main() printf(%dn ,fun(500); 参考答案 if(k%13=0)|(k%17=0) 6注意:不要改动
10、main函数,不得增行或删行,也不得更改程序的结构。试题程序:*/#include #include #include double fun(int m) double t=1.0; int i; for(i=2;i=m;i+)/*ERROR*/ t+=1.0/k;/*ERROR*/ return i;void main()int m;printf(nPlease enter 1 integer number: ); scanf(%d,&m); printf(nThe result is %1fn, fun(m);参考答案 t+=1.0/i; return t; 7./*下列给定程序中函数fu
11、n的功能是:计算n!。例如,给n输入5,则输出120.。请改正程序中的错误,使程序能输出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序: */#include #include double fun(int n) double result =1.0;/*ERROR*/ if n=0 return 1.0; while(n1&n170)/*ERROR*/ result=n-; return result;void main() int n; printf(Input N:); scanf(%d,&n); printf(nn%d!=%lfn,n,fun(n
12、);参考答案 if (n=0) result*=n-; 8/*下列给定程序中,函数fun的功能是:判断一个整数m是否是素数,若是返回1,否则返回0。在main函数中,若fun()返回1则输出YES,若fun()返回0则输出NO!。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序: */#include #include int fun(int m) int k=2; while (k=m&(m%k)/*ERROR*/ k+ /*ERROR*/ if(m=k) return 1; else return 0;void main(
13、) int n; printf(nPlease enter n: );scanf(%d,&n); if(fun(n) printf(YESn); else printf(NO!n);参考答案 k+; if(k=m) 程序填空1 /*已知如下公式:下面程序的功能使根据上述公式输出满足精度要求的eps的值,请填空使程序完整。*/#include#includeint main ( ) double s=0.0,eps,t=1.0;int n ;scanf (%lf,&eps);for (n=1 ; t=fabs(eps); n+) s+=t ;/*FILL*/t= 1 ;/*FILL*/ 2 ;r
14、eturn 0;参考答案 t*n/(2*n+1) printf(%lfn,2*s) 2/*请补充main函数,该函数的功能是:打印出满足个位的数字、十位上的数字和百位上的数字都相等的所有三位数。本题的结果为: 111 222 333 444 555 666 777 888 999。注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在main函数的横线上填入所编写的若干表达式或语句。试题程序:*/#include #include void main() int g, s, b; for(g=1; g10; g+)for (s=1; s10; s+)for(b=1; b10
15、; b+) /*FILL*/if( ) /*FILL*/ printf(%5d, );参考答案g=s&s=b g+s*10+b*1003/*请补充main函数,该函数的功能是:打印出1-1000中满足个位数字的立方等于其本身所有数。本题的结果为:1 64 125 216 729 注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数main的横线上填入所编写的若干表达式或语句。试题程序:*/#include #include void main() int i,g; for(i=1;i1000;i+) /*FILL*/g= 1 ;/*FILL*/if( 2 )print
16、f(%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 int fun(int a,int b,int c) int t;/*FILL*/ t=(ab)?(bc?b:(ac?c:【1】)/*FILL*/ :(ac)?【2】/*FILL*/ :(bc)?c:【3】); return t; void main
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 百科 语言 题库 112
限制150内