20102011二学期C程序设计试卷.doc_第1页
20102011二学期C程序设计试卷.doc_第2页
20102011二学期C程序设计试卷.doc_第3页
20102011二学期C程序设计试卷.doc_第4页
20102011二学期C程序设计试卷.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

2010/2011二学期C程序设计试卷说明:考生应将所有答案填写在答卷上,否则无效。一、填空题(每小题2分,共20分) int类型变量 x、y值分别为17、5,执行“x=-x%y-;”后x、y分别为 1 、 4 。 执行“y=0,n=5; while(n) y=y+n-;”后,变量y的当前值为 15 。 a是共有12个元素的3行4列数组,a22是数组中第 个元素。 声明“char s20=Im040a040student;”,函数strlen(s)的返回值为 。 自定义函数f5返回三个数中的最大值,函数原型为 。 自定义函数f6返回的值,函数原型为 。 对下列递归函数,函数调用f7(5)的返回值为 。 int f7(int n) return n=1? 1:10*f7(n-1)+n; int类型变量a、b的当前值分别为47、-12,表达式abb的值为 。 int类型变量a的当前值为-13,执行语句“a=a1;”后,a的当前值为 。 用模式a打开已存在的文件后,当前写文件位置位于 。二、程序阅读题(每小题8分,共24分)阅读下列程序,将运行时的输出结果写在答卷纸相应题号下。1. #include void main() int a7=2,4,1,5,0,-2,-1,s=0,i,k; for(i=0;i7;i+) s=s+ai; k=s/7; printf(%dn,k); for(i=0;i7;i+) if(ai=k) continue; printf(%dn,ai); 2. #include void main() int a44=0,i,j,k=1; for(i=0;i4;i+) for(j=3-i;j4;j+) aij=k+; for(i=0;i4;i+) for(j=0;j4;j+) printf(%3d,aij); putchar(n); 3. #include #include struct root float x1,x2; root f(float a,float b,float c) root y; y.x1=(-b+sqrt(b*b-4*a*c)/2/a; y.x2=(-b-sqrt(b*b-4*a*c)/2/a; return y; void main() float a43=1,2,1,5,1,4,1,2,-3,1,-1,-6;int i; root x; for(i=0;i4;i+) if(ai1*ai1-4*ai0*ai20) printf(方程无实根n); else x=f(ai0,ai1,ai2); printf(%.1f %.1fn,x.x1,x.x2); 三、程序填空题(每空2分,共20分)阅读下列程序说明和程序,将答案填写在答卷纸相应题号下。1.【程序说明】输入n后,输入n个实数,统计其中小于平均值的数据个数。 #include void main() float *a,v=0; ; scanf(%d,&n); a= ; for(i=0;in;i+) scanf(%f,a+i); v=v+ai; ; for(i=0;in;i+) ; printf(%dn,k); 2【程序说明】函数f查找二维数组a各行的最大值,并保存到一维数组b。 #include void f(float *a,int m,int n, ) int i,j; for(i=0;im;i+) ; for(j=1;jbi) ; void main() float x65,*y6,z6; int i,j; for(i=0;i6;i+) ; for(i=0;i6;i+) for(j=0;j5;j+) scanf(%f,&xij); f( ,6,5,z); for(i=0;i6;i+) printf(%fn,zi); 四、程序设计题(各小题依次为10、12、14分,共36分)1. 输入x后,按下列公式计算、输出y的值。 2. 输入1个int类型数组(存放60个学生某课程的考试成绩),按照059(不通过)、6089(通过)、90100(优秀)分段,输出各段的学生人数,以及平均分以下的学生人数。3. 文本文件e:a.txt 存放着期末考试信息,每行包含学号(12位)和4门考试课的成绩(其间用空格符分隔)。编程,从文件中删除两门(包括两门)以上成绩不及格的学生信息。第2页2010/2011二学期C程序设计答卷 选课班级任课教师 班级 学号 考生姓名 题号(题分)一(20)二(24)三(20)四(36)总分得分一、填空题(每小题2分,共20分) 、 二、程序阅读题(每小题8分,共24分)1. 2. 3. 三、程序填空题(每空2分,共20分)1. 2 四、程序设计题(各小题依次为10、12、14分,共36分)1. 输入x后,按下列公式计算、输出y的值。 2. 输入1个int类型数组(存放60个学生某课程的考试成绩),按照059(不通过)、6089(通过)、90100(优秀)分段,输出各段的学生人数,以及平均分以下的学生人数。3. 文本文件e:a.txt 存放着期末考试信息,每行包含学号(12位)和4门考试课的成绩(其间用空格符分隔)。编程,从文件中删除两门(包括两门)以上成绩不及格的学生信息。2010/2011二学期C程序设计参考答案一、填空题(每小题2分,共20分) 1、4 15 11 13 float f5(float,float,float) 或double float f6(float*,float,int) 12345 47 -7 文件末尾二、程序阅读题(每小题8分,共24分)1. 1 2. 0 0 0 1 3. -1.0 -1.0 2 0 0 2 3 方程无实根 4 0 4 5 6 1.0 -3.0 5 7 8 9 10 3.0 -2.0 三、程序填空题(每空2分,共20分)1. #include int i,n,k=0 (float*)malloc(n*sizeof(float) v=v/n if(aiv) k+2 float *b bi=ai0 bi=aij yi=xi y 四、程序设计题(各小题依次为10、12、14分,共36分)1. 输入x后,按下列公式计算、输出y的值。 #include 1分 #include 1分 void main() float x,y; 1分 scanf(%f,&x); 2分 if(x=5) y=x*sin(x); else y=x-log10(x); 4分 printf(%fn,y); 1分 2. 输入1个int类型数组(存放60个学生某课程的考试成绩),按照059(不通过)、6089(通过)、90100(优秀)分段,输出各段的学生人数,以及平均分以下的学生人数。 #include void main() int a60,k1,k2,k3,k4,i; float v=0; 2分 k1=k2=k3=k4=0; 2分 for(i=0;i60;i+) 4分 scanf(%d,&ai); v=v+ai; if(ai60) k1+; else if(ai90) k2+; else k3+; v=v/60; 1分 for(i=0;i60;i+) if(ai60) k4+; 2分 printf(%d %d %d %dn,k1,k2,k3,k4); 1分 3. 文本文件e:a.txt 存放着期末考试信息,每行包含学号(12位)和4门考试课的成绩(其间用空格符分隔)。编程,从文件中删除两门(包括两门)以上成绩不及格的学生信息。 #include void main() FILE *p1,*p2; 1分 char xh13; int c1,c2,c3,c4,k; 1分 p1=fopen(e:a.txt,r); 1分 p2=fopen(e:temp.txt,w); 1分 while(fscanf(p1,%s%d%d%d%d,xh,&c1,&c2,&c3,&c4)!=EOF) 6分 k=0; if(c

温馨提示

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

评论

0/150

提交评论