全国计算机等级考试
三级上机考试习题
南开上机100练
题目前带★号的是在2004年4月份上机考试中被考生们所确定了的上机题。
题目前带☆号的是在2004年9月份上机考试中被考生们所确定了的上机题。
题目中所提示的“无忧id xx”指的是2004年上半年版无忧模拟系统中的固定抽题序号
题目中所提示的“捷成id xx”指的是2004年上半年版捷成模拟系统中的固定抽题序号
*****************************************************************************************
题目1(无忧 id 14、id 27(提供isP()函数;捷成id 23题)
请编写一个函数jsValue(int m,int k,int xx[]),该函数的功能是:将大于整数m且紧靠m的k个素数存入数组xx传回。
最后调用函数writeDat()读取10组数据,。
。
例如:若输入17 5 则应输出:19,23,29,31,37。
请勿改动主函数main()和写函数writeDat()的内容。
#include <>
#include <>
void readwriteDat();
int isP(int m)
{
int i;
for(i=2;i<m;i++)
if(m % i==0)return 0;
return 1;
}
void num(int m,int k,int xx[])
{ int s=0;
for(m=m+1;k>0;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;m<n;m++)
printf("%d ",xx[m]);
printf("\n");
readwriteDat();
}
void readwriteDat()
{
int m,n,xx[1000], i;
FILE *rf,*wf;
rf=fopen("","r");
wf=fopen("","w");
for(i=0;i<10;i++){
fscanf(rf,"%d %d",&m,&n);
num(m,n,xx);
for(m=0;m<n;m++)fprintf(wf,"%d ",xx[m]);
fprintf(wf,"\n");
}
fclose(rf);
fclose(wf);
}
无忧id 14题(无isP()函数)
#include <>
void jsValue(int m,int k,int xx[])
{ int i,j,s=0;
for(i=m+1;k>0;i++)
{ for(j=2;j<i;j++)
if(i%j==0) break;
if(i==j) { xx[s++]=i; k--;}
}
}
main()
{
int m,n,zz[100];
printf("\n请输入两个整数:");
scanf("%d%d",&m,&n);
jsValue(m,n,zz);
for(m=0;m<n;m++)printf("%d ",zz[m]);
printf("\n");
writeDat();
}
writeDat()
{
int m,n,zz[100],i;
FILE *in,*out;
in=fopen("","r");
out=fopen("","w");
for(i=0;i<10;i++){
fscanf(in,"%d%d",&m,&n);
jsValue(m,n,zz);
for(m=0;m<n;m++)fprintf(out,"%d ",zz[m]);
fprintf(out,"\n");
}
fclose(in);
fclose(out);
}
另一解法:
void num(int m,int k,int xx[])
{
int n=0,data=m+1;
while(n<k){
if(isP(data)) xx[n++
三级网络技术上机100题库及其答案 来自淘豆网m.daumloan.com转载请标明出处.