资源描述:
《20102011二学期c程序设计试卷new》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、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列数组,a[2][2]是数组中第个元素。⑷声明“chars[20]="I'm 40a 40student";”,函数strlen(s)的返回值为。⑸自定义函数f5返回三个数中的最大值,函数原型为。⑹自定义函数f6返回的值
2、,函数原型为。⑺对下列递归函数,函数调用f7(5)的返回值为。intf7(intn){returnn==1?1:10*f7(n-1)+n;}⑻int类型变量a、b的当前值分别为47、-12,表达式a^b^b的值为。⑼int类型变量a的当前值为-13,执行语句“a=a>>1;”后,a的当前值为。⑽用模式"a"打开已存在的文件后,当前写文件位置位于。二、程序阅读题(每小题8分,共24分)阅读下列程序,将运行时的输出结果写在答卷纸相应题号下。1.#includevoidmain(){inta[7]={2,4,1,5,0,-2,-
3、1},s=0,i,k;for(i=0;i<7;i++)s=s+a[i];k=s/7;printf("%d",k);for(i=0;i<7;i++){if(a[i]<=k)continue;printf("%d",a[i]);}}2.#includevoidmain(){inta[4][4]={{0}},i,j,k=1;for(i=0;i<4;i++)for(j=3-i;j<4;j++)a[i][j]=k++;for(i=0;i<4;i++){for(j=0;j<4;j++)printf("%3d",a[i][j])
4、;putchar('');}}3.#include#include第2页structroot{floatx1,x2;};rootf(floata,floatb,floatc){rooty;y.x1=(-b+sqrt(b*b-4*a*c))/2/a;y.x2=(-b-sqrt(b*b-4*a*c))/2/a;returny;}voidmain(){floata[4][3]={{1,2,1},{5,1,4},{1,2,-3},{1,-1,-6}};inti;rootx;for(i=0;i<4;i++)if(
5、a[i][1]*a[i][1]-4*a[i][0]*a[i][2]<0)printf("方程无实根");else{x=f(a[i][0],a[i][1],a[i][2]);printf("%.1f%.1f",x.x1,x.x2);}}三、程序填空题(每空2分,共20分)阅读下列程序说明和程序,将答案填写在答卷纸相应题号下。1.【程序说明】输入n后,输入n个实数,统计其中小于平均值的数据个数。#include⑴voidmain(){float*a,v=0;⑵;scanf("%d",&n);a=⑶;for(i=0;i<
6、n;i++){scanf("%f",a+i);v=v+a[i];}⑷;for(i=0;ivoidf(float**a,intm,intn,⑴){inti,j;for(i=0;ib[i])⑶;}}voidmain(){floatx[6][5],*y[6],z[6];inti,j;for(i=0;i<6;i++)⑷;
7、for(i=0;i<6;i++)for(j=0;j<5;j++)scanf("%f",&x[i][j]);f(⑸,6,5,z);for(i=0;i<6;i++)printf("%f",z[i]);}第2页四、程序设计题(各小题依次为10、12、14分,共36分)1.输入x后,按下列公式计算、输出y的值。2.输入1个int类型数组(存放60个学生某课程的考试成绩),按照0~59(不通过)、60~89(通过)、90~100(优秀)分段,输出各段的学生人数,以及平均分以下的学生人数。3.文本文件e:a.txt存放着期末考试信息,每行包含学号
8、(12位)和4门考试课的成绩(其间用空格符分隔)。编程,从文件中删除两门(包括两门)以上成绩不及格的学生信息。第2页2010/2011二学期C程序设计答卷选课班级任课教师 班级