鱼C论坛

 找回密码
 立即注册
查看: 2582|回复: 10

[已解决]关于输出100-200内的素数

[复制链接]
发表于 2018-2-10 01:08:49 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
1.jpg
void main()
{
        int i,j,k;
        
        for(i=101;i<=200;i+=2)
        {
                k=sqrt(i);
                for(j=2;j<=k;j++)
                {
                        if(i%j==0)        break;
                }
                if(j>=k+1)
                {
                        printf("%d ",i);
                }
        }
}









2.jpg
void main()
{
        int i,j,k;  
        for(i=100;i<=200;i++)
        {
                k=sqrt(i);
                for(j=2 ;j<=k;j++)
                {
                        if(i%j==0)        break;
                }
                if(j>k)
                        printf("%d ",i);
        }
}







是不是这两种方法都可以,输出结果是一样的。






最佳答案
2018-2-10 12:43:42
都可以,显示第一种效率更高
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-2-10 07:31:41 From FishC Mobile | 显示全部楼层
第一个代码不符合题目要求,
i=101。   后面i+=2    循环一次后i=103
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2018-2-10 12:43:42 From FishC Mobile | 显示全部楼层    本楼为最佳答案   
都可以,显示第一种效率更高
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-2-10 14:06:02 | 显示全部楼层
waitforlove 发表于 2018-2-10 07:31
第一个代码不符合题目要求,
i=101。   后面i+=2    循环一次后i=103

因为102 104 106 108 110 112这些都肯定不是素数啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-12 13:34:15 | 显示全部楼层
waitforlove 发表于 2018-2-10 07:31
第一个代码不符合题目要求,
i=101。   后面i+=2    循环一次后i=103

排除二的倍数
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-12 13:43:37 From FishC Mobile | 显示全部楼层
a98 发表于 2018-2-10 14:06
因为102 104 106 108 110 112这些都肯定不是素数啊

前提是你知道它不是素数
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-2-12 15:46:08 | 显示全部楼层
waitforlove 发表于 2018-2-12 13:43
前提是你知道它不是素数

也是
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-12 17:51:31 | 显示全部楼层
#include<stdio.h>
void main ()
{
        int i, j ,k ;
        for (i=2 ;i<100;i++)
        {       
               
                for(j=1; j<100;j++)
                {
                        k = (i%j);
                        if(k == 0)
                        break ;
                               
                }
                if(i=j)
                printf("%4d",i);

        }

}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-2-12 20:49:09 | 显示全部楼层
LYHCYQ 发表于 2018-2-12 17:51
#include
void main ()
{

??你是要求1-100内的素数吗
#include<stdio.h>
void main ()
{
        int i, j ,k ;
        for (i=2 ; i < 100 ;i++)
        {       
                k=0;
                for(j=2; j <= i/2 ;j++)
                {
                        if(i%j == 0)
                        {
                                k=1;
                                break;
                        }
                        
                }
                if(k==0) 
                        printf("%-4d",i);
        }
        
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-2-12 20:52:44 | 显示全部楼层
LYHCYQ 发表于 2018-2-12 17:51
#include
void main ()
{

法2
void main()
{
        int i,j,k;  
        for(i=2;i<=100;i++)
        {
                k=sqrt(i);
                for(j=2 ;j<=k;j++)
                {
                        if(i%j==0)        break;
                }
                if(j>k)
                        printf("%d ",i);
        }
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-2-12 21:33:44 | 显示全部楼层
LYHCYQ 发表于 2018-2-12 17:51
#include
void main ()
{

你这种我改不过来 我发个帖问问
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-29 09:50

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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