- 3
- 0
- 约6.44万字
- 约 75页
- 2018-03-26 发布于河南
- 举报
2012年9月份全国计算机等级考试三级c语言 三级网络技术题库
2012年9月份全国计算机等级考试
三级C语言、三级网络技术、三级数据库上机题库
题目1
请编写一个函数jsValue(int m,int k,int xx[]),该函数的功能是:将大于整数m且紧靠m的k个素数存入数组xx传回。
最后调用函数writeDat()读取10组数据,分别得出结果且把结果输出到文件out.dat中。
部分源程序存在文件prog1.c中。
例如:若输入17 5 则应输出:19,23,29,31,37。
请勿改动主函数main()和写函数writeDat()的内容。
#include conio.h
#include stdio.h
void readwriteDat();
int isP(int m)
{
int i;
for(i=2;im;i++)
if(m % i==0)return 0;
return 1;
}
void num(int m,int k,int xx[])
{ int s=0;
for(m=m+1;k0;m++)
if(isP(m)) { xx[s++]=m; k--;}
}
main()
{
int m,n,xx[1000];
clrscr();
printf(\nPlease enter two integers:);
scanf(%d%d,m,n);
num(m,n,xx);
for(m=0;mn;m++)
printf(%d ,xx[m]);
printf(\n);
readwriteDat();
}
void readwriteDat()
{
int m,n,xx[1000], i;
FILE *rf,*wf;
rf=fopen(in.dat,r);
wf=fopen(out.dat,w);
for(i=0;i10;i++){
fscanf(rf,%d %d,m,n);
num(m,n,xx);
for(m=0;mn;m++)fprintf(wf,%d ,xx[m]);
fprintf(wf,\n);
}
fclose(rf);
fclose(wf);
}
题目2已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:如果四位数各位上的数字均是0或2或4或6或8,则统计出满足此条件的个数cnt,并把这些四位数按从大到小的顺序存入数组b中。最后main( )函数调用写函数writeDat()把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。
注意:部分源程序存在文件prog1.c中。
程序中已定义数组:a[200],b[200],已定义变量:cnt
请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。
#include stdio.h
#define MAX 200
int a[MAX], b[MAX], cnt = 0 ;
void jsVal()
{ int i,j,qw,bw,sw,gw;
for(i=0;iMAX;i++)
{ qw=a[i]/1000; bw=a[i]/100%10;
sw=a[i]%100/10; gw=a[i]%10;
if(qwqw%2==0bw%2==0sw%2==0gw%2==0) b[cnt++]=a[i];
}
for(i=0;icnt-1;i++)
for(j=i+1;jcnt;j++)
if(b[i]b[j]) { qw=b[i]; b[i]=b[j]; b[j]=qw;}
}
void readDat()
{
int i ;
FILE *fp ;
fp = fopen(in.dat, r) ;
for(i = 0 ; i MAX ; i++) fscanf(fp, %d, a[i]) ;
fclose(fp) ;
}
void main()
{
int i ;
readDat() ;
jsVal() ;
printf(满足条件的数=%d\n, cnt) ;
for(i = 0 ; i cnt ; i++) printf(%d , b[i]) ;
printf(\n) ;
writeDat() ;
}
writeDat()
{
FILE *fp ;
int i ;
fp = fopen(out.dat, w) ;
fprintf(fp, %d\n, cnt) ;
for(i
原创力文档

文档评论(0)