资源描述:
《大一c语言试题及答案》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、2005级信息学院《C语言程序设计》考试试题一、判断下列语句或程序的对错。(“╳”表示错,“√”表示对)(10分)1floats=0,s1.1=0;(╳)2#defineM=100(╳)inta[M];3char*p[]=””ctest””;(╳)4if((a=b)>0)t=a;(√)5charstr1[20]==”china”,str2[20];(╳)str2=str1;6inti,*p=&i;(√)7floata[100],*p;(√)p=a+1;8printf(“%d”,(30,50,80));(√)9intx,y;(√)y=20
2、,x=y+’a’;10int(*p)[20],a[20];(√)p=(int(*)[20])a;二、计算下列表达式的值(10分)设unsignedinta=7,b=17,c=5,d=3;floatx=2.5,y=4.7;(1)x+a%3*(int)(x+y)%2/4(2.5)(2)!(a<=b)
3、
4、(b5、d)(33)(4)a=1,b=2,(a>b)?++a:++b(3)(5)a/2.0*b-c/3+d(61.5) 三、程序改错,用标记指出错误,并在旁边将错误的地方进行修正(10分)(1)求某班30个学生英
6、语成绩的平局分#includefloatcalculate(float*p,intn);/*添加函数声明*/main(){floata[30],aver;intm;for(m=0;m<30;m++)scanf(“%d”,a+m);aver=calculate(a,30);printf(“aver=%f”,aver);}floatcalculate(float*p,intn)/*添加函数的数据类型*/{charx;inttemp;/*inttemp=0需要设置初始值为0;for(x=0;x<=n;x++)/*for(x=0;
7、x#defineN5char*process(charp[][80],intn);添加函数声明main(){charstring[N][80],*p;chari;for(i=0;i8、ess(char*p[][80],intn)/*去掉*号,或改为charp[][]*/{inti;char*pmax;for(i=1;i0*/pmax=p[i];returnpmax;}四程序填空(10分)(1)利用公式sinx设x=0.4时sinx的值#includemain(){floatx,sn,un;inti,j;x=0.4;un=_________________________;sn=_________________
9、_________;i=1;while(un=1e-5){un=_________________________;sn=__________________________;i++;}printf(“x=%f,sinx=%f”,x,sn);}(2)以下itoa(inta,char*)是一个将整数转换为对应的数字串的函数,reverse(char*)是一个将字符串翻转函数,被itoa调用,main()函数是用来测试itoa函数的.(书中例题:p197)#include#defineLENGTH6voidreverse(cha
10、r*);voiditoa(int,char*);voidmain(){intn;chars[LENGTH];printf(“inputainteger:”);scanf(“%d”,&n);itoa(n,s);printf(“string:%s”,s);}voiditoa(intn,char*p){inti,sign;if((sign=n)<0)n=-n;i=0;do{_p[i++]=n%10+’0’;}while((n/=10)>0);if(sign<0)p[i++]=‘-‘;p[i]=‘ ’;reverse(p);}voidrevers
11、e(char*){inti,j,k;for(i=0,j=strlen(p)-1;i