C语言试卷式样_第1页
C语言试卷式样_第2页
C语言试卷式样_第3页
C语言试卷式样_第4页
C语言试卷式样_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

考试中心填写:课程名称:C语言程序设计;试卷编号:();考试时间:120分钟年月日考试用专业班级:题号一二三四五六七八九十总分应得分101020202020100实得分评分:评卷人一、选择题(每题2分,共10分)1.以下叙述中正确的是()A)构成C程序的基本单位是函数B)可以在一个函数中定义另一个函数C)main()函数必须放在其它函数之前D)所有被调用的函数一定要在调用之前进行定义2.设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是()A)6.500000B)6C)5.500000D)6.0000003.已知i、j、k为int型变量,若从键盘输入:1,2,3<回车>,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是()A)scanf(“%2d%2d%2d”,&i,&j,&k);B)scanf(“%d%d%d”,&i,&j,&k);C)scanf(“%d,%d,%d”,&i,&j,&k);D)scanf(“i=%d,j=%d,k=%d”,&i,&j,&k);4.若x为unsignedint型变量,则执行下列语句后x值为()x=65535;printf(“%d\n”,x);A)65535B)1C)无定值D)-15.定义全局变量时,若变量的的存储类别缺省,则默认的存储类型是()。A)autoB)registerC)externD)static二、判断题(每题1分,共10分)C程序中的函数不能嵌套调用,但可嵌套定义。()。当形式参数为指针变量名时,实际参数可为指针变量名、数组名或其它类型变量的首地址()。若有说明:staticinta[3][4];,则数组a中各数组元素可在程序的编译阶段得到初值0()。若用数组名作为函数调用时的实参,则实际上传递给形参数组的是数组的第一个元素的值()。5、共用体变量的地址和它的各成员的地址都是同一起始地址。()。6、语句int(*p)(int,int);定义了一指针变量p,指向一个包含有两个int型形参的函数,其返回值也为int型数据。 ()。7、文件指针与文件内部位置指针意义相同。 ()。8、在定义枚举类型数据时,枚举元素是变量。 ()。9、continue语句只能冲破一层循环。()。10、结构体类型数据可以嵌套定义。 ()。装订线(答题不得超过此线)学号:姓名:第1页(共6页)三、写出程序运行结果(每题5分,共20分)1.main(){inta=15,b=21,m=0;switch(a%3){case0:m++;break;case1:m++;switch(b%2){default:m++;case0:m++;break;}}printf(“%d\n”,m);}程序运行后的输出结果是:2.floatfun(intx,inty){return(x+y);}main(){inta=2,b=5,c=8; printf("%3.0f\n",fun((int)fun(a+c,b),a-c));}程序运行后的输出结果是:3.voidfun(char*c,intd){*c=*c+1;d=d+1; printf("%c,%c,",*c,d);}main(){chara='A',b='a';fun(&b,a);printf("%c,%c\n",a,b);}程序运行后的输出结果是:4.structstu{charnum[10];floatscore[3];};main(){structstus[3]={{"20021",90,95,85},{"20022",95,80,75},{"20023",100,95,90}},*p=s;inti;floatsum=0;for(i=0;i<3;i++)sum=sum+p->score[i];printf("%6.2f\n",sum);}程序运行后的输出结果是:第2页(共6页)四、程序改错(每题5分,共20分)1.以下程序的功能是:按顺序读入10名学生4门课程的成绩,计算出每位学生的平均分并输出,程序如下:main(){intn,k;floatscore,sum,ave;sum=0.0;for(n=1;n<=10;n++){for(k=1;k<=4;k++) {scanf("%f",&score);sum+=score;} ave=sum/4.0; printf("NO%d:%f\n",n,ave); }}上述程序运行后结果不正确,调试中发现有一条语句出现在程序中的位置不正确。这条语句是哪条?并将其移到正确的位置。2.以下函数的功能是计算s=1+1/2+1/3+……+1/n,程序运行后结果不正确,错误的语句是哪条?并改之。main(){floats=0.0;inti;for(i=1;i<=3;i++)s=s+1/i;printf("%f",s);}3.以下函数的功能是:输出有10个元素的整型数组a的元素值。程序运行后结果不正确,只增加一条语句使其完成要求功能。main(){inta[10],*p=a,i;for(i=0;i<10;i++)scanf("%d",p++);printf("\n");for(i=0;i<10;i++,p++)printf("%d",*p);}4.以下函数的功能是:打印1到5的阶乘值。程序运行后结果不正确,只修改一条语句使其完成要求功能。intfac(n)intn;{intf=1;f=f*n;return(f);}main(){inti;for(i=1;i<=5;i++)printf(“%d!=%d\n”,i,fac(i));}第3页(共6页)第3页(共6页)五、程序填空(在【】中填空,每题5分,共20分)1.fun函数的功能是:首先对a所指的N行N列的矩阵,找出各行中的最大的数,再求这N个最大值中的最小的那个数作为函数值返回。请填空。#include<stdio.h>#defineN4intfun(int(*a)[N]){introw,col,max,min;for(row=0;row<N;row++) {for(max=a[row][0],col=1;col<N;col++) if(【】)max=a[row][col]; if(row==0)min=max; elseif(【】)min=max; }returnmin;}2.函数sstrcmp()的功能是对两个字符串进行比较。当s所指字符串和t所指字符串相等时,返回值为0;当s所指字符串大于t所指字符串时,返回值大于0;当s所指字符串小于t所指字符串时,返回值小于0(功能等同于库函数strcmp())。请填空。#include<stdio.h>intsstrcmp(char*s,char*t){while(*s&&*t&&(*s-*t)【】) {s++;t++;} return【】}3.下面的程序是用指针来交换两个数据,请将缺省语句填上。voidexchange(int*p,int*q){intt;t=*p;*p=*q;*q=t;}main(){inta,b,*x,*y;a=10;b=20;x=&a;【】【】printf(“%d%d\n”,*x,*y);}4.下面的程序是将字符串a按反向存入字符串b中并输出。(如

:串a为"12345

",则串b为"54321

")main(){char*a={"abcdefg"},b[80],*p=b;intn,m,k;k=strlen(a);n=k-1;m=0;while(n>=0)第4页(共6页){*(p+m)=【】第4页(共6页)n--;【】}*(p+k)=*(a+k);printf("%s\n",a);printf("%s\n",b);}六、编写函数完善下面程序(每题10分,共20分)1.编写在字符串中寻找关键字符的子函数#include<stdio.h>char*search(char*tagstr,char*c){}main(){char*string="Iamastudent",c;printf("Pleaseenterthecharacter:");scanf("%c",&c);/*输入关键字符*/if(search(string,&c))printf("Found!!!",search(string,&c));elseprintf("NotFound!!!\n");}2.用指向函数的指针作形参,设计一个函数process,每次实现不同的功能,当用不同的函数名作实参调用process时,process再去调用相应的函数。#include<stdio.h>main(){ intmax(),min(),add(),process(); inta,b; printf("enteraandb:"); scanf("%d,%d",&a,&b); printf("max="); process(a,b,max); printf("min=");process(a,b,min); printf("sum="); process(a,b,add);}第5页(共6页)max(x,y)intx,y;{ intz; if(x>y)z=x; elsez=y; return(z);}min(x,y)intx,y;{ intz; if(x<y) z=x; else z=y; return(z);}add(x,y)intx,y;{ intz; z=x+y; return(z);}process(){}第6页(共6页)考试中心填写:课程名称:C语言程序设计;试卷编号:();考试时间:120分钟年月日考试用专业班级:题号一二三四五六七八九十总分应得分101020202020100实得分评分:评卷人一、选择题(每题2分,共10分)1.2.3.4.5.二、判断题(每题分,共10分)1.2.3.4.5.6.7.8.9.10.三、写出程序运行结果(每题5分,共20分)1.2.3.4.。四、程序改错(每题5分,共20分)1.程序中的位置不正确的语句是:;改为(说明新位置):。2.错误的语句是:;改为:。3.在增加一条语句:。4.将语句:改为:。五、程序填空(每题5分,共20分)(每题按原程序次序填空)1.【】【】。2.【】【】。3.【】【】。4.【】【】。六、编写函数完善下面程序(每题10分,共20分)2.process(2.process()装订线(答题不得超过此线)学号:姓名:考试中心填写:课程名称:C语言程序设计;试卷编号:();考试时间:120分钟年月日考试用专业班级:题号一二三四五六七八九十总分应得分101020202020100实得分评分:评卷人一、选择题(每题2分,共10分)1.A2.D3.C4.D5.A二、判断题(每题分,共10分)1.×2.√3.√4.×5.√6.√7.×8.×9.×10.√三、写出程序运行结果(每题5分,共20分)1.12.93.b,BA,b4.270.00。四、程序改错(每题5分,共20分)1.程序中的位置不正确的语句是

温馨提示

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

评论

0/150

提交评论