12套C语言上机试题及参考答案

第七套C语言上机试卷

一、改错题 【题目】

函数void sort(struct T items[],int low,int high)的功能是:对items结构数组中从下标low开始到high为止的所有数组元素按成员name以字典序排序,并输出排序后的结果。

含有错误的源程序如下: #include #include struct T

{char name [20],num[20]; };

void sort(struct T items[],int low,int high) {struct T temp; int k,j;

for(k=low;k

if(strcmp(items[j].name,items[j+1].name)>0)

{temp=items[j];items[j]=items[j+1];items[j+1]=temp;} }

void main(void)

{struct T stu[5]={\ \ int k;

sort(stu,0,4);

printf(\ for(k=0;k<5;k++)

printf(\stu[k].name,stu[k].num); }

【要求】

1.将上述程序录入到文件myf1.c中,然后根据题目的要求以及程序中语句之间的逻辑关系对程序中的错误进行修改。

2.改错时,可以修改语句中的一部分内容,调整语句的次序,增加少量的变量说明或编译预处理命令,但不能增加其他语句,也不能删去整条语句。

3.改正后的源程序myf1.c保存在考试盘的根目录下,供阅卷用,否则不予评分。 二、编程题 【题目】

1. 编写函数 void count(char a[ ],char w[ ][10],int n,int b[ ])。其功能是:统计w指向的

数组中n个单词在a指向的字符串中各自出现的次数(将非字母字符看做单词分隔符),并将统计结果依次保存在b指向的数组中。

2. 编写main函数。采用数组初始化方式将以下测试数据(原数列)保存在数组中,

调用count函数作统计,将统计结果(所有单词以及各自出现的次数)保存到结果文件myf2.out中。最后将考生本人的准考证号字符串也保存到结果文件myf2.out中。

例如,测试数据为

a中字符串:\ w中的单词:\则输出结果为

this:1,that:1,is:2,a:1,an:1,book:1

my exam number is:0112400123(考生本人的准考证号)

【要求】

1.将源程序文件取名为myf2.c,输出结果文件取名为myf2.out。

2.数据文件的打开、使用和关闭均用C语言标准库中缓冲文件系统的文件操作函数实现。 3.源程序文件和运行结果文件均需保存在考试盘的根目录下,供阅卷用。 4.不要复制扩展名为OBJ和EXE的文件到考试盘上。

第八套C语言上机试题

一、改错题

【题目】从键盘输入十个字符串,从中求出最长的一个字符串,并将该串及其长度送入MYF1.OUT中。含有错误的源程序为: #include main( )

{int i ,maxlen,len;

char inline[10][100],maxline[100]; FILE *fp;

if((fp=fopen(\ EXIT(1); for(i=0;i <10;i ++) {gets(inline[i]);

fprintf(fp, \ } maxlen =0

for(i =0;i <10;i ++)

{strlenth(inline[i ],&len); if(len>maxlen)

strcpy(maxline,inline[i ]),maxlen=len; }

fprintf(fp, \fclose(fp); }

strlenth(char *p, int *len) {*len=0;

while (p[len]!= '\\0')++len; }

【要求】

1. 将上述程序录入到文件myf1.c中,然后根据题目的要求以及程序中语句之间的逻辑关系对程序中的错误进行修改。

2. 改错时,可以修改语句中的一部分内容,调整语句的次序,增加少量的变量说明或编译预处理命令,但不能增加其他语句,也不能删去整条语句。

3. 改正后的源程序myf1.c保存在考试盘的根目录下,供阅卷用,否则不予评分;并将输入的字符串和运行结果以myf1.out为文件名也保存在考试盘的根目录下。 二、编程题

【题目】计算自然数e和圆周率π的值,e精确到小数点后6位。 求e的近似值的计算公式为:

e=1+1/1!+1/2!+1/3!+……+1/n!+……(n=0,1,2,3,…) 求π/2的近似值的计算公式为:

?2??2?n???2?n??? 224466?????????2?n?1??2?n?1?133557 其中n =1,2,3,……,取n=1000时的π值。

【要求】

1. 将源程序文件取名为myf2.c,程序运行的结果保存于myf2.out文件中。

2. 数据文件的打开、使用和关闭等操作均用C语言标准库中缓冲文件系统的文件操作函数实现。

3. 源程序文件和运行结果文件均需保存在考试盘的根目录下,供阅卷用。 4. 不要将myf2.obj和myf2.exe保存到考试盘上。

联系客服:779662525#qq.com(#替换为@)