2021高级语言程序设计试卷1及答案_第1页
2021高级语言程序设计试卷1及答案_第2页
2021高级语言程序设计试卷1及答案_第3页
2021高级语言程序设计试卷1及答案_第4页
2021高级语言程序设计试卷1及答案_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

1、2021高级语言程序设计试卷1及答案一、取舍题:(共20题,每一题1.5分,共30分)1. C言语属于( A )A下级言语 B. 初级言语C中级言语 D. 呆板言语2. 以下齐下属于开法的用户标识符的是( A )AA1 P_0 dS B. float 2la _A C. *a hy kk D. _123 temp main 3. C言语中运算对于象必需是整型的运算符为( A )A% B. / C= D. 4. 设有int i; char c; float f; 下列了局为整数的抒发式是( B )Ai+f B. i/c Cc+f D. i+c+f5. 逗号抒发式(a=5*3, a+20),a+1

2、5的值是( B )A35 B. 30 C40 D. 206. 设有语句char a = 72; 则变量a( A )A包孕一个字符 B. 包孕两个字符C包孕3个字符 D. 道明没有开法7. 如有下列界说以及语句,则输入了局是( B )char c1=b,c2=e;printf(%d,%cn,c2-c1,c2-a+A);A2,M B. 3,E C2,E D. 没有断定8. 设有以下步伐段,则上面道法中准确的是( C )int k=10;while(k=0)k=k-1;Awhile轮回实行10次 B. 轮回是无穷轮回C轮回体语句一次也没有实行 D. 轮回体语句实行一次9. 当pi=3.1415926

3、时,printf( %-7.2f,pi);的输入了局是( C )(注:代表空格)A3.14159 B. 3.14 C3.14 D. 3.1410. 以下运算符中,劣先级最下的是( D )A! B. + C| D. ( )11. 抒发式a=b&b=c盘算的劣先级别是( C )A(a=b)&b)=c) B. (a=(b&b)=c C(a=b)&(b=c) D. a=(b&b)=c 12. 已经知x=45, ch=?B?,y=0;则抒发式(x=y & chA0 B. 语法错C1 D. “假”13. 以下闭于switch语句以及break语句的论断中,准确的是( B )Abreak语句是switch语

4、句的一全体B正在switch语句中能够依据必要利用或者没有利用break语句C正在switch语句中必需利用break语句Dbreak语句没有能正在switch语句中利用14. 若变量c为char范例,能准确判别出c为小写字母的抒发式是( D )AaA2 B. 3 C4 D. 516. 已经知:int a10; 则对于a数组元素的准确援用是( D )Aa10 B. a3.5 Ca(5) D. a0-917. 对于字符数组str赋初值,str没有能做为字符串利用的一个是( D )Achar str=shanghai; B. char str=shanghai;Cchar str9=s,h,a,n

5、,g,h,a,i; D. char str8= s,h,a,n,g,h,a,i;18. 下列对于C言语函数的无关形容中,准确的是( A )A正在C言语中,挪用函数时,依据真参传送给形参值的没有同,一般有值传送圆式以及天址传送圆式两种。BC函数既能够嵌套界说,又能够递回挪用C函数必需有前往值,可则没有能利用函数DC步伐中有挪用闭系的一切函数必需放正在统一个源步伐文件中19. 已经知p1以及p2为指针变量,且已经指背统一个整型数组中的元素,a是一个整型变量,则上面偶然义的语句是( D )Aa=*p1; B. a=*p1+*p2; Ca=p1-p2; D. p1=a-p2;20. 已经知:int a

6、=1,2,3,4,5,6,7,8,9,10.11.12, *p=a; 则值为3的抒发式是( A )Ap += 2, *(p+) B. p += 2, *+p Cp += 3, *p+ D. *(&a00+6)2、判别题:(共10题,每一题1分,共10分)1C言语中没有能利用闭键字做为标识符。()2C言语的标识符定名划定规矩中,第一个字符能够为字符#?或者&?。()3C言语对于字母的年夜小写没有敏感。()4C言语中,标记常量由下令#define去界说。()5逻辑运算符的运算劣先级皆要低于算术运算符。()6for轮回只能用于轮回次数已经经断定的情形。()7break语句没有仅可以用正在轮回语句中,

7、借可用正在switch语句中。()8给出下列界说char x =abcdefg, y =a,b,c,d,e,f,g; 则数组x以及数组y的少度不异。()9函数的情势参数是全部变量。()10指针变量是一种特别范例的变量,用去寄存另外一个变量的天址。()题号 1 2 3 4 5 6 7 8 9 10 问案3、步伐挖空题(2题5空,4分/空,共20分)1.自界说函数fun的功效是前往形参p所指背的少度为n的整数数组中最小值地点的下标(下标从0入手下手盘算)。fun(int *p, int n)int i,j;_(1) D_;for(i=0;iif (pireturn(j);Aj=1Bj=i+Cj=i

8、Dj=02.以下步伐是从键盘上输出一个字符串(少度小于80),而后统计该字符串的少度并输出。#include stdio.hvoid main()char s80;int n,i;scanf(%s, _(1) A_);_(2) D_;while(s_(3) B _!=0)n+;printf(%d n,n);A.sB.i+C.n=0,i=1D.n=0,i=0E. s80F. i4、编程题:(共2题,每一题20分,共40分)1. 从键盘输出3个整数,供个中的最年夜数以及最小数,并输入了局。# include stdio.hvoid main()int x, y, z, max, min;print

9、f(Please input three integer number:);scanf(%d %d %d, &x, &y, &z);min = max = x;if(x=y & y=z)printf(x = y = z, max=min=%dn, max);elseif (ymax)max = y;if (zmax)max = z;if (ymin = y;if (zmin = z;printf(max=%d, min=%dn, max, min);2. 从键盘上输出一个3*3的整数矩阵,供其各止的仄均值并输入,输入时保存两位小数。#includevoid main()int a33,b3=0

10、;int i,j;printf(请输出一个3止3列的整数矩阵:n);for(i=0;ifor(j=0;jscanf(%d,&aij);for(i=0;ifor(j=0;jbi=bi+aij;for(i=0;iprintf(该矩阵第%d止元素的仄均值是:%.2fn,i+1,bi/3.0);5、取舍题:(共20题,每一题1.5分,共30分)1. 以下4个选项中,均是开法的整型常量的选项是( A )A160 0XFFFF 011 B. -0XCDF 01A 0XEC. -01 986,012 0688D. -0X48a 2e5 0x2. 以下4个选项中,均是没有开法的浮面数的选项是( B )A160

11、0.12 e3 B. 123 2e4.2 .e5 C18 0.0 123e4 D. e3. 234 1e33. 开法的C言语字符常数是( A )At B. A C54 D. A4. 正在C言语中,请求运算数必定是整型的运算符是( D )A/ B. + C!= D. %5. 字符串常量”mine”的字符个数是( B )A4 B. 5 C6 D. 76. 下列属于不法的C言语本义字符的是( B )Ab B. 0xf C037 D. 7. 若x、y、z均为int型变量,则实行下列语句后的输入是( A )x=(y=(z=10)+5)-5;printf(x=%d, y=%d, z=%dn,x,y,z);

12、y=(z=x=0,x+10);printf(x=%d, y=%d, z=%dn,x,y,z);A. x=10, y=15, z=10B. x=10, y=10, z=10x=0, y=10, z=0 x=0, y=10, z=0C. x=10, y=15, z=10D. x=10, y=10, z=10x=10, y=10, z=0 x=10, y=10, z=08. 正在下列一组运算符中,劣先级最下的运算符是( C )A9. 已经知:int x; float y; 所用的scanf挪用语句体例为:scanf( “x=%d, y=%f”, &x, &y );为了将数据10以及66.6分手赋给x

13、以及y,准确的输出应该是( A )Ax=10, y=66.6C1010. 已经有以下界说的输出语句,若请求A1,A2,C1,C2的值分手为10,20,A以及B,当从第一列入手下手输出数据时,准确的数据输出圆式是( C )(注:暗示空格,int a1, a2,;char c1, c2;scanf( “%d%c%d%c”, &a1, &c1, &a2, &c2 );A10A20BB. (x=1) | (xC(x=1)&(xD. (x=1) | (x12. 假设一切变量均已经准确道明,以下步伐段运转后x的值是( B )a=b=c=0; x=35;if(!a) x-;else if (b);if(c)

14、 x=3;else x=4;A34 B. 4 C35 D. 313. 若变量c为char范例,能准确判别出c为年夜写字母的抒发式是( D )AAAn=0 B. n=1 Cn!=0 D. n!=115. 已经知:int a=4, b=5, c; 则实行抒发式c=a=ab后变量a的值为( A )A0 B. 1 C4 D. 516. 界说int i=1; 实行语句while(i+A3 B. 4 C5 D. 617. 开法的数组道明是( B )Aint a = “string”;Bint a = 0, 1, 2, 3, 4, 5 ;Cchar a = “string”;Dchar a = 0, 1,

15、2, 3, 4, 5 ;18. 当挪用函数时,真参是一个数组名,则背函数传递的是( B )A数组的少度 B. 数组的尾天址C数组每一一个元素的天址 D. 数组每一个元素中的值19. 函数挪用:strcat(strcpy(str1,str2),str3)的功效是( C )A将串str1复造到串str2中后再毗连到串str3以后B. 将串str1毗连到串str2以后再复造到串str3以后C将串str2复造到串str1中后再将串str3毗连到串str1以后D. 将串str2毗连到串str1以后再将串str1复造到串str3中20. 已经知:int a=1,2,3,4,5,6,7,8,9,10.11.

16、12, *p=a; 则(*p) 的值是( A )A1 B. 2 C3 D. a6、判别题:(共10题,每一题1分,共10分)1C言语中能利用闭键字做为标识符。()2C言语的标识符定名划定规矩中,第一个字符没有能够为字符#?或者&?。()3C言语对于字母的年夜小写敏感。()4C言语中,标记常量由下令#include去界说。()5除了了逻辑非以外,逻辑运算符的运算劣先级皆要低于算术运算符。()6for轮回只能用于轮回次数已经经断定的情形。()7break语句只可以用正在轮回语句中。()8函数既能够嵌套界说又能够嵌套挪用。()9函数的情势参数是全部变量。()10指针变量是一种特别范例的变量,用去寄存

17、另外一个变量的天址。()题号 1 2 3 4 5 6 7 8 9 10 问案7、步伐挖空题(2题5空,4分/空,共20分)1. 下列步伐是判别输出的一个整数是不是能被5整除了,若能整除了,则输入“Y”,若没有能则输入“N”。#include stdio.hvoid main()int k;printf(Enter a int number:);scanf(%d,_(1)B_);if(_(2)C_)printf(Y n);elseprintf(N n);AkB&kCk%5=0Dk%5!=02. 将一个字符串中的小写字母改为年夜写。#include stdio.hvoid main()int i=

18、0;char str80;scanf(%s, str);while(_(1)A_)if (stri=a&stri_(2)C_;_(3)B_;printf(%s n,str);Astri!=0 Bi+ Cstri-=a-A Dstri-=A-a E.stri=0 F. i8、编程题:(共2题,每一题20分,共40分)1. 输入x2的值,x与值从0到10。#include stdio.hvoid main()int x;for(x=0; xprintf(square(%d)=%dn, x, x*x);2. 从键盘上输出一个3*4的整数矩阵,请求输入其最年夜元素的值,和它的止号以及列号。#inclu

19、de void main()int a34, max, i, j, row, colum;printf(请输出3*4的整数矩阵:n);for(i=0;ifor(j=0;jscanf(%d,&aij);max=a00;row=0;colum=0;for(i=0;ifor(j=0;jif (aijmax)max=aij;row=i;colum=j;printf(max=%d, row=%d, colum=%d n,max, row, colum);“下级言语步伐计划”编程题1.恣意输出10个整数,挨印出10个数中的最年夜值。#include void main()int n, max, i;sca

20、nf(%d, &max);for (i = 1; i scanf(%d, &n);if (n max)max = n;printf(max=%d, max);2.编写一个函数依据下列公式盘算s,盘算了局做为函数值前往;n经由过程形参传进。s=#include double f1(int n);void main()int n=1;printf(Input the value of nn);scanf(%d,&n);printf(%lf,f1(n);double f1(int n)int i;double term,s=0;for(i=1;iterm=1.0/(2*i-1);s+=term;re

21、turn(s);3.编写步伐挨印一切的“火仙花数”。“火仙花数”指一个3位数,其列位数字坐圆以及即是该数自己,比方153是一个“火仙花数”,果为 153111333555。#include void main()int i,j,k,n;printf(result is:);for(n=100;ni=n/100;j=(n-i*100)/10;k=n%10;if(n=i*i*i+j*j*j+k*k*k)printf(%d ,n);printf(n);4.编写一个步伐,输出一个3位数的正整数,而后反背输入对于应的数。如:123,则输入321。#include void main()int i,s=0

22、,j;scanf(%d,&i);if(i=100&ij=i%10;s=s+j;j=(i-j)/10%10;s=s*10+j;j=i/100;s=s*10+j;printf(the inverse number is %d,s);elseprintf(input erroe!);5.将10个整数输出数组,供出其仄均值并输入。#include void main()int a10,i;float ave;for(i=0;iscanf(%d,&ai);for(i=1;iave=ave+ai;ave=ave/10.0;printf(ave=%f,ave);6.从键盘输出10论理学死的C言语成就存进一维

23、数组内,编写步伐盘算10论理学死的最下分、仄均分以及合格人数。#include void main()int i,score10,max,min;float ave;for(i=0;iscanf(%d,&scorei);max=score0;min=score0;ave=score0;for(i=1;iif(scoreimax)max=scorei;if(scoreimin=scorei;ave=ave+scorei;ave=ave/10.0;printf(max=%d,min=%d,ave=%f,max,min,ave);7.编写一个步伐,判别用户输出的字符是不是是数字,如果数字,则输入“a

24、 numerical character”,可则输入“other character”。#include void main()char ch;ch=getchar();if(ch=0&chprintf(a numerical character);elseprintf(other character);8.编程输出a、b、c的值后,输入一元2次圆程ax2+bx+c=0的解。#include #include void main( )float a, b, c,d, x1, x2;printf(input a,b,c: );scanf(%f%f%f, &a, &b, &c);d = sqrt(

25、b * b - 4 * a *c);x1 = (-b + d) / (2 * a);x2 = (-b - d) / (2 * a);printf(x1 = %.2f x2 = %.2fn, x1, x2);9.有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13.供出那个数列的前20项之以及。#include stdio.hvoid main()int n,t,number=20;float a=2,b=1,s=0;for(n=1;ns=s+a/b;t=a;a=a+b;b=t;printf(sum is %9.6fn,s);10.利用轮回布局编写步伐,挨印出以下图案*#inclu

26、de stdio.hvoid main()int i,j,k;for(i=1;ifor(j=1;jprintf( );for(k=1;kprintf(*);printf(n);11.用冒泡排序法将10个整数由年夜到小排序。#include void main( )int a10, i, j, t;printf (input %d numbers: n, 10);for (i = 0; i scanf (%d, &ai);for (i = 0; i for (j = 0; j if (aj t = aj;aj = aj+1;aj+1 = t;printf (the sorted numbers:

27、n);for (i = 0; i x)printf(你猜的数年夜了n);elseprintf(你猜的数小了n);while(tif(flag=0)printf(次数已经到。游戏停止!);17.将10个真型数输出数组(float n10;)顺序寄存后再输入。#include void main()int i,j;float n10, t;for(i=0;iscanf(%f,&ni);for(i=0,j=9;it=ni;ni=nj;nj=t;for(i=0;iprintf(%.2f ,ni);18.将一个数组中的值按顺序从头寄存。比方,本去逆序为 a,b,c,d,e,f,g,如今逆序为g,f,e,

28、d, c,b,a.(数组少度没有限)#include #define N 10void main()int i,M;char aN, t;for(i=0;iscanf(%c,&ai);M=N-1;for(i=0;it=ai;ai=aM;aM=t;for(i=0;iprintf(%c,ai);19.编写步伐,顺转字符串。#include void main ( )char str80,t;int i, n;printf(input a string:);gets(str);for (i=0,n=strlen(str)-1; it=stri; stri=strn; strn=t;printf (顺

29、置后内容:);puts(str);20.有一篇文章,共有3止笔墨,每一止有80个字符。请求分手统计出个中英文年夜写字母,小写字母,数字,空格和其余字符的个数。#include #include void main()char str380,c;int e3=0,x3=0,d3=0,s3=0,o3=0;int i,j;for(i=0;igets(stri);for(i=0;ifor(j=0;strij!=0;j+)c=strij;if(c=A&celse if(c=a&celse if(c=0&celse if(c= )si+;else oi+;for(i=0;iprintf(第%止:年夜写字母

30、有%d个,小写字母有%d个,数字有%d个,空格有%d 个,其余字符有%d个。n ,i,ei,xi,di,si,oi);21.供=+101501210011kkkkkkvoid main()int i,sum1=0,sum2=0;double sum3;for(i=1;isum1+=i;for(i=1;isum2+=i*i;for(i=1;isum3+=1.0/i;printf(The result is %.2f,sum1+sum2+sum3);22.计划步伐:界说能够存储1000个整数的数组;正在该数组中挨次存进1到1000;正在屏幕上挨印出数组中一切17的倍数。(10)#includevo

31、id main()int i,a1000;for ( i=0;iai = i+1;for ( i=0;iif (i%17 = 0) printf(%dn,ai);23.写出一个函数,供n! .(n! = 1*2*3*n)#includeint fact(int n)if (n=0)return 1;return n*fact(n-1);void main()printf(%d,fact(10);24.从键盘上输出多少教死成就(成就正在0100之间),盘算仄均成就,并输入低于仄均分的教死成就,用输出背数停止输出。或者者标题为:利用一维数组盘算教死的仄均成就。用输出背数停止输出。#include

32、stdio.hvoid main( )int score30,NumMax=30;int i,num=0,sum=0;double average;printf(input the scores please:n);for(i=0;iscanf(%d,&scorei);if (scoreibreak;num+; /*num用去盘算非背数的成就的个数*/for(i=0;isum+=scorei; /* 供教死成就的乏减以及*/average=(sum*1.0)/num; /* 盘算仄均成就*/printf(average=%lfn,average);for (i=0;iif (scoreiprintf(the number = %d, its score = %d,i,scorei);25.从键盘上输出一个3*3的矩阵,并供其主对于角线元素的以及。#includevoid main()int a33,sum=0;int i,j;printf(请输出一个3止3列的整数矩阵:n);for(i=0;ifor(j=0;jscanf(%d,&aij); /*读进2维数组a*/for(i=0;isum=sum+aii; /*将主对于角线的元素乏减到sum中*/printf(该矩阵住对于角线元素的以及是:%d,sum);printf(n

温馨提示

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

评论

0/150

提交评论