ImageVerifierCode 换一换
格式:DOCX , 页数:37 ,大小:32.27KB ,
资源ID:5004319      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5004319.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(c语言程序设计等级考试习题汇编 1.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

c语言程序设计等级考试习题汇编 1.docx

1、c语言程序设计等级考试习题汇编 1C语言程序设计等级考试习题汇编分章节练习题汇编数组一、判断题1.数组a5表示a数组有5个元素,下标从1到5。F2.数组的大小不依赖于程序运行过程中变量的值。T3.在C中,变量和数组都必须先定义,然后使用。T4.int new8=0,0,0,0,0,0,0,0等价于int new8=0*8。F5.int a32=1,1,1,2,2,2,3,3,3等价于int a32=1,2,3。F6.用来存放字符数据的数组是字符数组,字符数组中的一个元素存放一个字符。T7.数组的名称其实是数组在内存中的首地址。T8.如果在对数组进行初始化时,给定的数据元素个数比数组元素个数少时

2、,多余的数组元素会被自动初始化为最后一个给定元素的值。F9.当数组名作为参数被传递给某个函数时,原数组中的元素的值可能被修改。T10.C语言不检查数组的下标是否越界。T二、单项填空题1.若数组名作实参而指针变量作形参,函数调用实参传给形参的是 (D)2.A.数组的长度 B.数组第一个元素的值3.C.数组所有元素的值 D.数组第一个元素的地址4.已有定义:char a=xyz,b=x,y,z;,以下叙述中正确的是 (C) 5.A.数组a和b的长度相同 B.a数组长度小于b数组长度 6.C.a数组长度大于b数组长度 D.上述说法都不对7.以下能正确定义一维数组的选项是(B)8.A.int a5=0

3、,1,2,3,4,5 B.char a=0,1,2,3,4,5 9.C.char a=A,B,C D.int a5=012310.有以下语句:int b;char c10;,则正确的输入语句是 (B) 11.A.scanf(%d%s,&b,&c) B. scanf(%d%s,&b,c); 12.C.scanf(%d%s,b,c) D.scanf(%d%s,b,&c);13.已有定义:char a=xyz,b=x,y,z;,以下叙述中正确的是 (C) 14.A.数组a和b的长度相同 B.a数组长度小于b数组长度 15.C.a数组长度大于b数组长度 D.上述说法都不对16.以下语句或语句组中,能正

4、确进行字符串赋值的是 (C )17.A.char *sp;*sp=right!; B.char s10;s=right!; 18.C.char s10;*s=right!; D.char *sp=right!;19.有以下程序 20.main() 21.char s=159,*p; 22.p=s; 23.printf(%c,*p+);printf(%c,*p+); 24. 25.程序运行后的输出结果是(A)26.A.15 B.16 C.12 D.5927.有以下程序 28.main() 29.int num44=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,i,

5、j; 30.for(i=0;i4;i+) 31.for(j=0;j=i;j+)printf(%4c, ); 32.for(j=_;j4;j+)printf(%4d,numij); 33.printf(n); 34. 35. 36.若要按以下形式输出数组右上半三角 37.1 2 3 4 38.6 7 8 39.11 12 40.16 41.则在程序下划线处应填入的是 (B)42.A.i-1 B.i C. i+1 D.4-i 43.下面程序(C) (每行程序前面的数字表示行号) 44.1 main( )45.2 46.3 float a10=0,0;47.4 int I;48.5 for (i=0

6、;i3;i+) scanf(“%d”,&ai);49.6 for (i=1;i10;i+) a0=a0+ai;50.7 printf(“%fn”,a0);51.8 52.A.没有错误 B.第3行有错误观点 C.第5行有错误 D.第7行有错误53.若二维数组a有m列,则计算任一元素aij在数组中位置的公式为(D).(假设a00位于数组的第一个位置上)。54.Ai*m+j B.j*m+I C.i*m+j-1 D.i*m+j+155.若有以下程序段:56. 57. int a=4,0,2,3,1,I,j,t;58. for (i=1;i=0 & taj)61. aj+1=aj;j-;62. aj+1

7、=t;63. 64. 则此程序的功能是( B)65.A.对数组a进行插入排序(升序) B.对数组a进行插入排序(降序)66.C.对数组a进行选择排序(升序) D.对数组a进行选择排序(降序)三、程序填空题题1CBBAD以下是使用数组来处理并打印斐波那契数列的前二十项的程序。打印时,每行打印10个数字。斐波那契数列的格式为:当n=0时,f0=0,当n=1时,f1=1,当n1时,fn=fn-1+fn-2。【程序】# include,stdio.h.main() int_(1)_ ; int line=0,j; fbnq0=0; fbnq1=1; for (j=_(2)_;j20;j+) _(3)_

8、; for (j=0.j20;j+); print (%d,”fbqnj); _(4)_; if (line=10)| _(5)_ printf(“n”); return (1);1A. Fbnq B. Fbnq1 to 20 C. Fbnq20 D. Fbnq2A.1 B.2 C.0 D.-13A.fbnqj=fbnqj-1+fbnqj B. fbnqj=fbnqj-1+fbnqj-2 C. fbnqj=fbnq0+fbnq1 D. fbnqj+1=fbnqj-1+fbnqj4A. line+ B.line- C.line=line-1 D.line=05A. line+ B.line- C

9、.line=line-1 D.line=0题有已排序好的字符串a,下面的程序是将字符串s中的每个字符升序的规律插入到a中,请选择填空。【程序】# include main ( ) char a 20 =”cehiknqtw”; char s = “fbla”; int i,k,j;BB for (k = 0;s k!=0);k+) j=0; while (k = 0;s k=a j&aj!=0) j+; for (_(1)_) _(2)_ ; a j= sk; puts(a); 1.i=strlen(a)+k:; i=j; i- B.i=strlen(a);i=j;i- C.i=j; i=st

10、rlen(a)+k;i+ D.i=j;i=strlen9a);i+2A.ai=ai+1 B.ai+1=ai C.ai=ai-1 D.ai-1=aiADA题下面程序的功能是将已按升序排好序的两个字符串a和b中的字符按升序归并到字符串c中,请选择填空。【程序】# include main ( ) char a =”acegikm”; char b =”bdfhjlnpq”; char c80,*p int i=0,j=0,k=0; while (ai!=0 & bj!=0) if (aibj) _(1)_ else _(2)_ k+; ck=0; if (_(3)_) p=b+j; else p=

11、a+i; strcat (c,p); puts(c); 1.ck=ai;i+ B. ck=aj;i+ C. ck=ai;j+ D.ck=aj;j+2.ck=ai;i+ B. ck=aj;i+ C. ck=ai;j+ D.ck=aj;j+3A.ai= =0 B. ai! =0 C. ai-1= =0 D. ai-1! =0题下面程序以每行个数据的形式输出a数组,请选择填空。【程序】# define N 20BACmain ( ) int a N,I; for (i=0;iN;i+) scanf(%d”, _(1)_) if (_(2)_) _(3)_ printf(“%d”,ai); print

12、f(“n”); 1A.ai B.&ai C.a D.aN2A.i % 4= =0 B. i % 4! =0 C. i / 4= =0 D. i / 4! =03A. printf(“r”) B. printf(“w”) C. printf(“n”) D. printf(“b”)CBC题下面程序将二维数组a的行和列元素互换后存另一个二维数组b中,请选择填空。【程序】Main ( ) int a23=(1,2,3),(4,5,6); int b32,I,j; printf(“array a:n”); for (i=0;i=1;i+) for (j=0; _(1)_;j+) printf(“%5d”

13、,aij); _(2)_; printf(“n”); printf(“array b: n”); for (i=0; _(3)_;i+) for (j=0;j=1;j+) printf(“%5d”,bij); printf(“n”) 1A.j1 B.j=1 C.j=2 D.j22A.bji=aji B. bji=aij C. bij=aji D. bij=aij3A.j1 B.j=1 C.j=2 D.j2题下面程序可求出矩阵a的两条对角线的元素之和,请选择填空。【程序】Main ( ) int a33 = 1,3,6,7,9,11,14,15,17,sum1=0,sum2=0,i,j; for

14、 (i=0;i3;i+) for (j=0;j=3;j+) if (i= =j) sum1=sum1+aij; for (i=0;i=0 B.j=1 C.j=2 D.j=3题7以下程序可求出所有的水仙花数。(提示:所谓水仙花数是指一个三位正数,其各位数字的立方和等于该正整数)请选择填空。【程序】Main ( ) int x,y,z,a 8 ,m,i=0;BBA printf(“the special numbers are (in the arrange of 1000):n”); for (_(1)_;m+) x=m/100; y=_(2)_; z=m%10; if (x*100+y*10+

15、z=x*x*x+y*y*y+z*z*z) _(3)_ ;i+; for (x=0;xI;x+) printf(“%6d”,ax); 1.m=100;m999 B. m=100;m1000 C. m=1;m1000 D. m=1;m9992A.m/10 B.m/10-x*10 C.m%10 x*10 D.m%103A.ai=m B.ai=xyz C.ai+1=m D.ai+1=xyzACB题下面程序的功能是生成并打印某数列的前项,该项数列第,项分别为和,以后每个奇数编号的项是前两项的和,偶数编号的项是前两项差的绝对值。生成的个数存在一维数组x中,并按每行4项的形式输出,请选择填空。【程序】Mai

16、n( ) int x21,I,j; x1=0;x2=1; i=3; do xi= _(1)_; xi+1= _(2)_; i=_(3)_; while (i=20);for (i=;i=20;i+) printf(“%5d”,xi); if (i%4= =0) printf“n”; 1A.xi-1+xi-2 B.xi+1+xi+2 C. xi+xi-1 D. xi+xi+12A.x(i-1)-x(i) B.x(i)-x(i-1) C.fabs(double)(x(i)-x(i-1) D. fabs(double)(x(i-1)-x(i-2)3A.i+1 B.i+2 C.i+3 D.i-1 BA

17、题下面程序的功能是检查一个二维数组是否对称,请选择填空。【程序】Main( ) int a44=1,2,3,4,2,2,5,6,3,5,3,7,4,6,7,4,; int i,j,found=0; for (j=0;j4;j+) for (_(1)_;i4;i+) if (aij! =aji) _(2)_ ;break; if (found) printf(“No”); else printf(“Yes”);1A.i=j B.i=j+1 C.i=0 D.i=12A.found=1 B.found=0 .found=true D.found=falseDBA题a是一个33的矩阵,输入a的元素,如

18、果a是下三角矩阵,输出“YES”,否则,输出“NO”。 (下三角矩阵,即对角线以上的元素都为0,主对角线为从矩阵的左上角至右下角的连线。)【程序】#include void main( ) int flag,i,k; int a33; for (i=0;i3;i+) for (k=0;k3;k+); scanf(%d”,&aik); () ; for (i=0;i3&flag;i+) for(k=i+1;k3&flag;k+) if( () ) () ; if (flag) printf(YESn); else printf(NOn); A.flag=0 B.flag=0 C.flag=1 D

19、.flag=1 A.aki!=0 B.aik=0 C.aik!=0 D.aki=0 A.flag=0 B.flag=0 C.flag=1 D.flag=1题输入一个字符串,将其中的大写字母转换为小写字母后输出。【程序】 #include void main( ) char str80; int k; gets(str); for (k=0;strk!=0;k+); if ( ) ; puts(str); A、A=strkA&strk=A&strk=Astrk=ZA、strk=strk-32 B、strk=strk-a+A C、tolower(strk) D、strk=strk-A+a四、程序阅

20、读题1.45有以下程序2.main() 3. 4.int p8=11,12,13,14,15,16,17,18,i=0,j=0; 5.while(i+7) if(pi%2) j+=pi; 6.printf(%dn,j); 7. 8.请写出程序运行后的输出结果9.7 2有以下程序 10.main() 11. 12.char a7=a00a00; int i,j; 13.i=sizeof(a); j=strlen(a); 14.printf(%d %dn,i,j); 15. 16.请写出程序运行后的输出结果17.有以下程序 18.void f(int *x,int *y) 19. 20.int t

21、; 21.t=*x;*x=*y;*y=t; 22. 23.main() 24. 25.int a8=1,2,3,4,5,6,7,8,i,*p,*q; 26.p=a;q=&a7; 27.while(p28.f(p,q);p+;q-; 29.for(i=0;i8;i+)printf(%d,ai); 30.) 31.写出程序运行后的输出结果32.3 4 58,7,6,5,4,3,2,1,有以下程序 33.main() 34. 35.int a33,*p,i; 36.p=&a00; 37.for(i=0;i9;i+)pi=i; 38.for(i=0;i3;i+)printf(%d,a1i); 39.

22、40.写出程序运行后的输出结果41.1 02 00 0有以下程序 42.main() 43. 44.int a32=0,(*ptr)2,i,j; 45.for(i=0;i2;i+) 46.ptr=a+i;scanf(%d,ptr);ptr+; 47.for(i=0;i3;i+) 48.for(j=0;j2;j+)printf(%2d,aij); 49.printf(n); 50. 51. 52.若运行时输入:1 2 3,写出输出结果53.abcbcc写出以下程序运行后的输出结果54.#include 55.main() 56.char ch=abc,x34;int i; 57.for(i=0;

23、i3;i+)strcpy(xi,ch); 58.for(i=0;i3;i+)printf(%s,&xii); 59.printf(n); 60. 61.6385有如下程序62.main()63. char ch25=“6937”,”8254”,*p2;64.int i,j,s=0;65.for(i=0;i2;i+) pi=chi;66.for(i=0;i0;j+=2)68.s=10*s+pij-0;69.printf(“%dn”,s);70.71.写出该程序的输出结果72.有如下程序段,写出输出的结果73. char str6;str0=”a”;acegikfor (int j=0;j6;j+

24、)for (int k=j+1;k6;k+)strk=strj+2;printf(“%.6s”,str); 五、程序设计题1请用户输入一个含有12个浮点数的一维数组,请分别计算出数组中所有的正数的和以及所有的负数的和。2# include3 main ()4 float data12; /*存放浮点数的一维数组。*/5 float result1=0.0,result2=0.0 / 将要用于分别存放正数和,负数和6 printf(“please inuput 12 float numbers:n”);7 for (int I=0;I12;I+)8 scanf(“f”,&dataI);9 for (I=0;I0.0)11 result1+=dataI;12 else13 result2+=dataI);14 15 printf(“the sum of all the positive number is %.3fn”,result1);16 printf(“then sum of all the negitive numbers is %.3fn”,result2);17 return(1);18 192编写一个程序,输出一个杨辉三角形。# i

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1