二级c语言套题+答案(四).doc_第1页
二级c语言套题+答案(四).doc_第2页
二级c语言套题+答案(四).doc_第3页
二级c语言套题+答案(四).doc_第4页
二级c语言套题+答案(四).doc_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

一、填空 共10题 (共计10分)第1题 (1.0分)已知:int i=8,j=10,m,n;m=+i;n=j+;问语句执行后m=【1】,n=【2】。答案:=(答案1)=9=(答案2)=10第2题 (1.0分)C语言中一个函数由函数首部和【1】两部分组成.答案:=(答案1)=函数体第3题 (1.0分)若在程序中用到strlen()函数时,应在程序开头写上包含命令# include 【1】.答案:=(答案1)=string.h第4题 (1.0分)从函数的形式上看,函数分为无参函数和【1】两种类型.答案:=(答案1)=有参函数第5题 (1.0分)若输入字符串:abcde,则以下while循环体将执行 【1】 次.While(ch=getchar()=e) printf(*);答案:=(答案1)=0第6题 (1.0分)C语言把文件看作是一个【1】的序列.答案:=(答案1)=字符=或=字节第7题 (1.0分)已知 a=10,b=15,c=1,d=2,e=0,则表达式!a8+2B:a&dC:(a*2-c)|dD:a-b=10 or a=0 | a=10 & a=10 | a=0答案:D第9题 (1.0分)C语言源程序文件经过C编译程序编译连接之后生成一个后缀为()的可执行文件A:.cB:.objC:.exeD:.bas答案:C第10题 (1.0分)下列数据中属于字符串常量的是A:ABCB:ABCC:ABCD:A答案:B第11题 (1.0分)以下程序段的输出结果是()。char *alp=ABC,DEF,GHI; int j; puts(alp1);A:AB:BC:DD:DEF答案:D第12题 (1.0分)以下叙述不正确的是()。A:一个C源程序可由一个或多个函数组成B:一个C源程序必须包含一个main函数C:C程序的基本组成单位是函数D:在C程序中,注释说明只能位于一条语句的后面答案:D第13题 (1.0分)设有以下语句, 若0k4,下列选项中对字符串的非法引用是()。 char str42=aaa,bbb,ccc,ddd,*strp4; int j; for (j=0;j4;j+) strpj=strj;A:strpB:strkC:strpkD:*strp答案:A第14题 (1.0分)执行以下程序段后,输出结果和a的值是()。int a=10;printf(%d,a+);A:10 和 10B:10 和 11C:11 和 10D:11 和 11答案:B第15题 (1.0分)设C语言中,一个int型数据在内存中占2个字节,则unsigned int型数据的取值范围为()。A:0-255B:0-32767C:0-65535D:0-2147483647答案:C第16题 (1.0分)以下程序的运行结果是()。main() int i=1,sum=0; while(i10) sum=sum+1;i+; printf(i=%d,sum=%d,i,sum);A:i=10,sum=9B:i=9,sum=9C:i=2,sum=1D:运行出现错误答案:D第17题 (1.0分)若有定义:int aa 8;则以下表达式中不能代表数组元aa1的地址的是()。A:&aa0+1B:&aa1C:&aa0+D:aa+1答案:C第18题 (1.0分)以下语句中,不能实现回车换行的是()。A:printf(n);B:putchar(n);C:fprintf(stdout,n);D:fwrite(n,1,1,stdout);答案:B第19题 (1.0分)若有int *p=(int *)malloc(sizeof(int);则向内存申请到内存空间存入整数123的语句为()。A:scanf(%d,p);B:scanf(%d,&p);C:scanf(%d,*p);D:scanf(%d,*p);答案:A第20题 (1.0分)设j和k都是int类型,则下面的for循环语句()。 for(j=0,k=0;j=9&k!=876;j+) scanf(%d,&k);A:最多执行10次B:最多执行9次C:是无限循环D:循环体一次也不执行答案:A第21题 (1.0分)已知字符A的ASC代码值是65,字符变量c1的值是A,c2的值是D.执行语句printf(%d,%d,c1,c2-2);后,输出结果是A:A,BB:A,68C:65,66D:65,68答案:C第22题 (1.0分)若有如下定义和语句,且0=i5,下面( )是对数值为3数组元素的引用 int a=1,2,3,4,5,*p,i; p=a;A:*(a+2)B:ap-3C:p+2D:a+3答案:A第23题 (1.0分)若int a=3,则执行完表达式a-=a+=a*a后,a的值是A:-15B:-9C:-3D:0答案:D第24题 (1.0分)若有定义int a10,*p=a;,则p+5表示A:元素a5的地址B:元素a5的值C:元素a6的地址D:元素a6的值答案:A第25题 (1.0分)若有以下定义和语句: int a10=1,2,3,4,5,6,7,8,9,10, *p=a;不能表示a数组元素的表达式是A:*pB:a9C:*p+D:a*p-a答案:D第26题 (1.0分)对于定义,char *aa2=abcd,ABCD,选项中说法正确的是A:aa数组元素的值分别是abcd和ABCDB:aa是指针变量,它指向含有两个数组元素的字符型一维数组C:aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址D:aa数组的两个元素中各自存放了字符a和A的地址答案:D第27题 (1.0分)int (*p)6; 它的含义为()。A:具有6个元素的一维数组B:定义了一个指向具有6个元素的一维数组的指针变量C:指向整型指针变量D:指向6个整数中的一个的地址答案:B第28题 (1.0分)下列语句的结果是()。main() int j; j=3;printf(%d,+j); printf(%d,j+);A:3,3B:3,4C:4,3D:4,4答案:D第29题 (1.0分)若有以下定义:char s=092; 则该语句()。A:使s的值包含1个字符B:定义不合法,s的值不确定C:使s的值包含4个字符D:使s的值包含3个字符答案:B第30题 (1.0分)在C语言中,形参的缺省存储类是()。A:autoB:registerC:staticD:extern答案:A四、程序填空 共2题 (共计20分)第1题 (10.0分)/*-【程序填空】-功能:在歌星大奖赛中,有10个评委为参赛的选手打分,分数为 1100分。选手最后得分为:去掉一个最高分和一个最低分 后其余8个分数的平均值。请编写一个程序实现。-*/#includevoid main() int score,i,max,min,sum; max=-32768; min=32767; sum=0; for(i=1;imax=或=maxscore=(答案3)=scorescore=(答案4)=(sum-max-min)/8=或=(sum -max - min )/8第2题 (10.0分)/*-【程序填空】-功能:现有两组有序数组(增序),xi、yj代表数组x、y的 任一元素,问满足xiyi的元素对有多少个?-*/#include int dominance_count(int f, int g, int m, int n) int index_f, index_g; int count; count = index_f = index_g = 0; while (index_f m & index_g n) if (findex_f = gindex_g) index_f+; else index_g+; /*SPACE*/ count += 【?】; /*SPACE*/ 【?】; #include void main(void) int x = 1, 6, 8 ; int nx = sizeof(x)/sizeof(int); int y = 4, 5, 7 ; int ny = sizeof(y)/sizeof(int); int dominance_count(int , int , int, int), i; printf(nDominance Count of two increasing Arraysn); printf(n # Array 1 Array 2); printf(n - - -); for (i = 0; i nx; i+) printf(n%3d%10d%10d, i, xi, yi); printf(nnThere are %d Dominance Pairs., /*SPACE*/ 【?】); 答案:=(答案1)=m - index_f=或=m - index_f=(答案2)=return count=(答案3)=dominance_count(x, y, nx, ny)五、程序改错 共1题 (共计10分)第1题 (10.0分)/*- 【程序改错】-功能:输入一行字符,分别统计出其中英文字母、空格、数字和 其它字符的个数。-*/#include main() char c; int letters=0,space=0,digit=0,others=0; printf(please input some charactersn); /*FOUND*/ while(c=getchar()=n) /*FOUND*/ if(c=a&c=A&c=0&c=a&c=A&c=Z )=或=if( c=a | c=A&c=Z )=或=if( c = a | c = A & c=Z )=(答案3)=else if(c= )六、程序设计 共2题 (共计20分)第1题 (10.0分)/*-【程序设计】-功能:求1到100之间的偶数之积。-*/ #include void wwjt(); double fun(int m) /*Program*/ /* End */ main() printf(ji=%fn,fun(100); wwjt();void wwjt() FILE *IN,*OUT; int iIN,i; double dOUT; IN=fopen(in.dat,r); if(IN=NULL) printf(Please Verify The Currernt Dir.it May Be Changed); OUT=fopen(out.dat,w); if(OUT=NULL) printf(Please Verify The Current Dir. it May Be Changed); for(i=0;i5;i+) fscanf(IN,%d,&iIN); dOUT=fun(iIN); fprintf(OUT,%fn,dOUT); fclose(IN); fclose(OUT);答案:-double y=1; int i; for(i=1;i=m;i+) if(i%2=0)y*=i; return y;-第2题 (10.0分)/*-【程序设计】-功能:编写函数用冒泡排序法对数组中的数据进行从小到 大的排序。-*/#include #includevoid wwjt(); void sort(int a,int n) /*Program*/ /* End */main() int a16,i; for(i=0;i16;i+) ai=random(30)+15; for(i=0;i16;i+) printf(%3d,ai); printf(n-n); sort(a,16); for(i=0;i16;i+) printf(%3d,ai); wwjt();void wwjt() FILE *IN,*OUT; int n; int i10; IN=fopen(in.dat,r); if(IN=NULL) prin

温馨提示

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

评论

0/150

提交评论