资源描述:
《c语言上机题库(3)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验四C语言上机考试题(第三套共100分)1.(35分)下面的程序通过函数average计算数组中各元素的平均值,要求编制该函数并用已给出的主函数进行测试。要求源程序存入test31.c中。#includevoidmain(){floataverage(int*pa,intn);inta[5]={2,4,6,8,10};floatmean;mean=average(a,5);printf(“mean=%f”,mean);}floataverage(int*pa,intn){要求编制的函数体}2.(35分)下面程序的功能是:对给定的一组整型数
2、在同一数组中实现颠倒存放。例如,输入为11,14,17,22,31,54,67,70,89,90之后输出90,89,70,67,54,31,22,17,14,11。请输入并完善程序,要求源程序存入test32.c中。#includevoidmain(){intarr[10],i,j,temp;printf(“Inputvalueofarray:”);for(i=0;i<10;i++)scanf(“%d,”,①);for(i=0,j=9;i<=j;i++,②){temp=arr[i];arr[i]=③;arr[j]=temp;}for(i=0
3、;i<10;i++)printf(“%4d”,arr[i]);}3.(30分)下面程序的功能是:主函数通过调用函数mychrcmp实现判定str1与str2的大小问题。函数的原型说明为intmychrcmp(char*s,char*t);,其功能是判定s与t的关系,函数返回值大于0时表示s大于t;函数返回值小于0时表示s小于t;函数返回值等于0时表示s等于t。程序中标有*号的行有错,请改正并将改正的源程序存入test33.c中。#includevoidmain(){intmychrcmp(chat*s,char*t);charstr1[80],
4、str2[80];intflag;gets(str1);gets(str2);*flag=mychrcmp(*str1,*str2);if(flag<0)printf(“str10)printf(“str1>str2”);elseprintf(“str1=str2”);}intmychrcmp(char*s,char*t)*{while(s==t){if(*s==’ ’)return0;elses++,t++;}*returns-t;}课外(补充)4.函数adddigit的原型为intadddigit(int
5、num);,其功能是求num各位数字之和。要求编制该函数并用如下所示的主函数进行测试,源文件存入test11.c中。#include#includevoidmain(){intadddigit(intnum);intn;sacnf(“%d”,&n);printf(“sum=%d”,adddigit(n));}5.下列程序是将一个二维数组行和列的元素互换,存到另一个二维数组中。请输入并完善程序。源文件存入test12.c中。#includevoidmain(){inti,j,arr1[2][3]={{2,4,
6、6},{1,3,5}},arr2[3][2];printf(“Arrayarr1:”);for(i=0;i<2;i++){for(j=0;j<①;j++){printf(“%5d”,arr1[i][j]);②=arr1[i][j];}printf(“”);}printf(“Arrayarr2:”);for(i=0;i<3;i++){for(j=0;j<2;③)printf(“%5d”,arr2[i][j]);printf(“”);}}6.以下程序实现在屏幕上显示指定文本文件(文件名为:c:abc.dat)内容的功能。源程序中前面标有星号的行有错
7、误,请改正之。源文件存入test13.c中。*includevoidmain()*{file*p;charc;*if((p=fopen(“c:\abc.dat”,”w”))==NULL){printf(“can’topenthefile,”);return;}while(!feof(p)){c=fgetc(p);*getchar(c);}}