欢迎来到天天文库
浏览记录
ID:20540121
大小:172.74 KB
页数:17页
时间:2018-10-13
《华科2012级信息学院c语言试卷(a)-答案及评分规则》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、2012级信息学院《C语言程序设计》试卷(闭卷)一、判断下列语句或程序的对错。(“X”表示错,“V”表示对)(10分)//评分:每小题1分(1)charch=’55’;(x)(2)unsignedinta=b=c=5;(x)(3)inta=2,*p;p=&a;printf(’’%d’’,*&a);(V)⑷inta[5][5],(*p)[5];(X)(5)p=&a[0】[01;chara=’a’,c;(、)(6)c=a++;intn;scanf(’’%d’’,&n);(X)⑺inta[n];inta[10],氺p;(V)(8)p=a+2;inta,b;(X)(9)scanf(’’%d
2、,%f’,a,b);floata=l,*b=&a,*c=&b;(x(10)charstr[]={’’World”};(V)—»、printf(”%c’’,*(str+2));计算下列表达式的值(10分)//评分:每小题2分设(1)intx=3,y=-4,z=4;floatk=3.5;x++-y+++z(12(2)y〉z
3、
4、z〉2&&x++(1(3)x
5、z&xAz(7(4)x-y+!z-1&&x+y/2(1(5)y+(x/3*(int)(x+k)/2)%4(-1三、改错,根据题意改正下列程序的错误和漏掉的部分(10分)(1)输入球体半径r,求其体积.#include“stdio.h”
6、;#include“stdio.h”0.5分definepi=3.1415926;#definepi3.14159260.5分floatvolume(intr);floatvolume(floatr);1分voidmian()voidmain()0.5分floatr,v;scanf(“%d”,r);scanf(“°/of’,&r);0.5分v=volume(r);printf(“%d”,v);1printf(“%f’,v);0.5分/floatvolume(intr);floatvolume(floatr)0.5分iv=4/3*pi*r*r*r;v=4.0/3*pi*r*r*r;1
7、分returnv;)(2)利用指针数组对字符数组屮的5个姓名字符串排序,字符数组内容不变#include〈stdio.h〉;#include0.5分#include0.5分voidmain(){charname[5][20];char*p[5];inti;intij;0.5分chartemp[20];char*temp;0.5分for(i=0;i<=5;i++){for(i=0;i<5;i++)0.5分gets(name+i);p=name[i];p[i]=name+i;或p[i]=name[i]0.5分}for(j=i+l;j<5;j++)0
8、.5分if(strcmp(p[i],p[j])>0)或if(strcmp(p[i],p[j])<0)0.5分for(i=0;i<5;i++)for(j=0;j<5;j++){if(P[i]〉pU]){temp=p[i];p[i]=pfjl;pUl=p[i];}}for(i=0;i<5;i++)printf(“%c”,p[i]);}四、程序填空(10分)//评分:每空1分(1)给出年月日,计算出该日是该年的第几天。#includevoidmain(){intyear,month,day,days,i,d;printf(“请输入年,月,日:”);scanf(“%d%d
9、%d’,,&year,&month,&day);days=0;for(i=1;i10、11、year%400==0)d=29;elsed=28;break;}}printf(“%d年%(1月%d口是该年的第%(1天化”,)^^,month.day,days+day)}(2)将一个指字符串的正序和反序进行连接12、,形成一个新串放在另一个字符数组中。例如:当字符串为’’ABCD”时,则新字符数组的内容应为’ABCDDCBA’1。#include#includevoidfun(char*s,char*t);voidmain()charS[100J,T[100];printf("PleaseenterstringS:");scanf(n%s'S):fun(S,T);printf("Theresultis:%s",T);}voidfu
10、
11、year%400==0)d=29;elsed=28;break;}}printf(“%d年%(1月%d口是该年的第%(1天化”,)^^,month.day,days+day)}(2)将一个指字符串的正序和反序进行连接
12、,形成一个新串放在另一个字符数组中。例如:当字符串为’’ABCD”时,则新字符数组的内容应为’ABCDDCBA’1。#include#includevoidfun(char*s,char*t);voidmain()charS[100J,T[100];printf("PleaseenterstringS:");scanf(n%s'S):fun(S,T);printf("Theresultis:%s",T);}voidfu
此文档下载收益归作者所有