| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1803 人关注过本帖
标题:请问一下各位帅哥美女,我这个对素数求和的程序错在哪里?谢谢啦.
只看楼主 加入收藏
jiujiuwan
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2018-10-21
收藏
 问题点数:0 回复次数:6 
请问一下各位帅哥美女,我这个对素数求和的程序错在哪里?谢谢啦.
#include<stdio.h>
//这个c程序用于计算输入的两个数n,m之间的所有素数之和
int main(){
    int n=0, m=0, i=0, j=0, sum=0;
   
    scanf("%d %d",&n,&m);//输入两个数n,m
   
    for(i=n;i<=m;i++){//for循环进行遍历区间内的每一个数
        
        int isprime=1;//isprime为1表示是素数
        for(j=2;j<i;j++){
            
            if(i%j==0){
                //对于从n到m这个区间的数i,他可以被j求余,即整除.
                isprime=0;//说明i不是素数,应该被置零
            }
            break;//退出for循环,isprime已经被置零,目的已经实现
        }
        if(isprime==1){//说明上面的if循环没起作用,也就是说i是一个素数.
            
            sum=sum+i;//对素数进行累加
        }
    }
    printf("sum is %d\n", sum);
   
    return 0;
}

这个是输出结果:
2 3
sum is 1.500000
--------------------------------
Process exited after 3.044 seconds with return value 0
请按任意键继续. . .
搜索更多相关主题的帖子: 美女 素数 sum for 循环 
2019-04-19 20:52
zbjzbj
Rank: 12Rank: 12Rank: 12
来 自:郑州
等 级:贵宾
威 望:52
帖 子:633
专家分:3045
注 册:2011-4-22
收藏
得分:0 
#include<stdio.h>
//这个c程序用于计算输入的两个数n,m之间的所有素数之和
int main()
{
    int n=0, m=0, i=0, j=0, sum=0;

    scanf("%d %d",&n,&m);//输入两个数n,m

    for(i=n; i<=m; i++) //for循环进行遍历区间内的每一个数
        {

            int isprime=1;//isprime为1表示是素数
            for(j=2; j<i; j++)
                {

                    if(i%j==0)
                        {
                            //对于从n到m这个区间的数i,他可以被j求余,即整除.
                            isprime=0;//说明i不是素数,应该被置零
                            break;//退出for循环,isprime已经被置零,目的已经实现
                        }
                    
                }
            if(isprime==1) //说明上面的if循环没起作用,也就是说i是一个素数.
                {

                    sum=sum+1 ;//对素数进行累加
                    
                }
        }
    printf("sum is %d\n", sum);

    return 0;
}

另外需要排除1,1不是素数
2019-04-19 21:44
word123
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:13
帖 子:333
专家分:1622
注 册:2014-4-5
收藏
得分:0 
回复 2楼 zbjzbj
//他这个是对的,求素数之和,不是统计素数个数
sum=sum+i;//对素数进行累加
2019-04-20 15:21
她很美
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2019-4-17
收藏
得分:0 
2019-04-20 15:51
jiujiuwan
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2018-10-21
收藏
得分:0 
回复 3楼 word123
亲,您能帮我看看为什么结果一直不正确吗?
2019-04-20 17:25
jiujiuwan
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2018-10-21
收藏
得分:0 
回复 3楼 word123
我自己也感觉这个程序好像是没有问题,但是每次运行出现的结果都变得匪夷所思.我不知道是否跟设置什么全局变量之类的东西有关.自己是一个小白一枚而已.
2019-04-20 17:42
word123
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:13
帖 子:333
专家分:1622
注 册:2014-4-5
收藏
得分:0 
break那里有问题,2楼已经给你回答了
2019-04-20 21:31
快速回复:请问一下各位帅哥美女,我这个对素数求和的程序错在哪里?谢谢啦.
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.033151 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved