打印本文 打印本文  关闭窗口 关闭窗口  
2001年9月机试试题
作者:佚名  文章来源:不详  点击数  更新时间:2007/12/21 18:22:22  文章录入:杜斌  责任编辑:杜斌

2001年9月机试试题 


1./*prog1 已知数据文件 in.dat中存有500个三位数,并已调用读函数readdat()把 
这些数存入数组a中,请考生编制一函数jsvalue(),其功能是:要求得出这些数的 
最大10个不重复的素数,且以从小到大的顺序依次存入数组b中,最后调用写函数 
writedat()把数组b中的10个三位数输出到out.dat文件。 
注意:部分源程序存在文件prog1.c文件中。 
程序已定义数组:a[500],b[10] 
请勿改动数据文件in.dat中的任何数据、主函数main()、读函数readdat()和写函 
数writedat()的内容。*/ 
#include <stdio.h> 
int a[500], b[10] ; 

int isp(int m) 

int i ; 

for(i = 2 ; i < m ; i++) 
if(m % i == 0) return 0 ; 
return 1 ; 


void jsvalue() 





main() 

int i ; 
readdat() ; 
jsvalue() ; 
writedat() ; 
for(i = 0 ; i < 10 ; i++) printf("b[%d]=%d/n", i, b[i]) ; 


readdat() 

file *fp ; 
int i ; 
fp = fopen("in.dat","r") ; 
for(i = 0 ; i < 500 ; i++) fscanf(fp, "%d,", &a[i]) ; 
fclose(fp) ; 


writedat() 

file *fp ; 
int i ; 
fp = fopen("out.dat","w") ; 
for(i = 0 ; i < 10 ; i++) fprintf(fp, "%d/n", b[i]) ; 
fclose(fp) ; 


2./*prog2 已知数据文件in.dat中存有500个三位数,并已调用读函数readdat() 
把这些数存入数组a中,请考生编制一函数jsvalue(),其功能是:要求得出这些 
数的末位数字是偶数的最大10个不重复的三位数,且以从小到大的顺序依次存入 
数组b 中,最后调用写函数writedat()把数组b中的10个三位数输出到out.dat文件。 
注意:部分源程序存在文件prog1.c文件中。 
程序已定义数组:a[500],b[10] 
请勿改动数据文件in.dat中的任何数据、主函数main()、读函数readdat()和写函 
数writedat()的内容。*/ 
#include <stdio.h> 
int a[500], b[10] ; 

void jsvalue() 





main() 

int i ; 
readdat() ; 
jsvalue() ; 
writedat() ; 
for(i = 0 ; i < 10 ; i++) printf("b[%d]=%d/n", i, b[i]) ; 


readdat() 

file *fp ; 
int i ; 
fp = fopen("in.dat","r") ; 
for(i = 0 ; i < 500 ; i++) fscanf(fp, "%d,", &a[i]) ; 
fclose(fp) ; 


writedat() 

file *fp ; 
int i ; 
fp = fopen("out.dat","w") ; 
for(i = 0 ; i < 10 ; i++) fprintf(fp, "%d/n", b[i]) ; 
fclose(fp) ; 


3./*prog3 已知数据文件in.dat中存有500个三位数,并已调用读函数readdat()把 
这些数存入数组a中,请考生编制一函数jsvalue(),其功能是:要求得出这些数 
打印本文 打印本文  关闭窗口 关闭窗口