资源描述
南京师范大学2010-2011学年第2学期
《C程序设计》课程期末上机试卷(A)参考答案
(考试时间: 70分钟, 满分:40分,清注意按要求保存文件)
试卷密码C01
一、 改错题(20分)
【题目】以下程序的功能是找出所有的3位数的素数,并将其写入文件中。
含有错误的源程序如下:
#include <stdio.h>
int prime(int m)
{ int k,i;
k=(int)sqrt(m);
for(i=2;i<=k;i++)
if(m%i==0) return 0;
if(i<k) return 1;
}
void main()
{
FILE *pf;
int m,i,k;
if((pf=fopen("d:\\t.txt","w"))==NULL)
{ printf("file open error\n");exit(1);}
for(m=101;m<1000;m+=2)
{ k=prime();
if(k){
fprintf("%d is a prime number\n",m);
printf("%d is a prime number\n",m);
}
}
}
二、 编程题(20分)
【题目】
输入n个英文单词,将它们按字典序排好后写入文件。将你的学号也写到文件。
【编程要求】
1. 编写2个函数,main函数接受输入的单词,调用排序函数进行排序,将排序结果写入文件。功能函数void sort(char s[][20],int n)将字符数组s排序。
2. 在屏幕上输出排好序的结果。
3. 将程序输出结果保存到myf2.out结果文件中,最后将考生本人的学号也保存到myf2.out文件中。
例如:输入:pie orange apple tie zoo
myf2.out结果文件:
apple tie orange pie zoo
My NO.:12345678 (12345678为考生本人的学号)
第 2 页 共 2 页
展开阅读全文