找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 32|回复: 0

三级c题

[复制链接]

19

主题

6

回帖

3539

积分

新手上路

积分
3539
发表于 2005-10-16 18:36:17 | 显示全部楼层 |阅读模式

请编写一个函数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;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("in.dat","r");

wf=fopen("out.dat","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 <stdio.h>

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("in.dat","r");

out=fopen("out.dat","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);

}_

http://blog.ccec.cn/user1/446/index.html 这是我的家,欢迎光临!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|似水流年

GMT+8, 2026-9-4 11:11 , Processed in 0.029679 second(s), 22 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表