找回密码
 加入
搜索
查看: 2482|回复: 2

[效率算法] c语言质数两种算法有不同么?[已解决]

[复制链接]
发表于 2013-7-22 15:32:17 | 显示全部楼层 |阅读模式
本帖最后由 流沙枫 于 2013-7-22 19:29 编辑
#include <stdio.h>
#include <math.h>
main()
{
int t,i;

FILE *fp;  // 声明一个文件流类型的变量,FILE 为 stdio.h 里定义的
fp=fopen("zs.txt","w"); //用 fopen 函数打开文件,第一个参数表示文件名,若不是当前
                               // 路径请加 \\ 号,如 C:\\Windows\\System32,"w" 表示写(write)
if (fp!=NULL) // 打开成功
 
// fp 文件流变量,"%d"写入格式,1 是写入的数据


for(t=2;t<=100;t++)
{
for(i=2;i<sqrt(t);i++)
{
if(t%i==0)

break;
}
if(i>sqrt(t))
//printf("%d,",t);

fprintf(fp,"%d,",t);
}
printf("\n");

fclose(fp);
}
#include <stdio.h>
#include <math.h>
main()
{
int t,i;

FILE *fp;  // 声明一个文件流类型的变量,FILE 为 stdio.h 里定义的
fp=fopen("zs2357.txt","w"); //用 fopen 函数打开文件,第一个参数表示文件名,若不是当前
                               // 路径请加 \\ 号,如 C:\\Windows\\System32,"w" 表示写(write)
if (fp!=NULL) // 打开成功
 fprintf(fp,"%s","2,3,5,7,");
// fp 文件流变量,"%d"写入格式,1 是写入的数据

for(i=2;i<100;i++)
{
if(i%2&&i%3&&i%5&&i%7) 
//printf("%d,",i);
fprintf(fp,"%d,",i);

}
printf("\n");
return 0; 

fclose(fp);
}
100内结果相同了,不知道后面会不会有错?
发表于 2013-7-22 15:41:48 | 显示全部楼层
首先这偏了
在者100内sqrt(100)内的质数只有2357,下面的只适用于121以内找质数
 楼主| 发表于 2013-7-22 19:13:18 | 显示全部楼层
回复 2# seniors


    谢谢了,只是觉得C语言算法是各编语言基础。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-22 02:08 , Processed in 0.131160 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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