| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 477 人关注过本帖
标题:一道三级C题目 答案没看懂。求帮忙
只看楼主 加入收藏
pan569673372
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2013-1-2
收藏
 问题点数:0 回复次数:4 
一道三级C题目 答案没看懂。求帮忙
#include <stdio.h>
int cnt,sum;
void writeDAT();

void countValue()
{   
    int i,j;
    int a1,a2,a3;
    for(i=101;i<1000;i++){
        a1=i%10;
        a2=i%100/10;
        a3=i/100;
        if(a3==(a2+a1)%10)
            for(j=2;j<i;j++)
                    if(i%j==0)
                        break;
        if(j==i){
            sum+=i;
        cnt++;
        
        }

    }
}

void main()
{
    cnt=sum=0;
    countValue();
    printf("素数的个数=%d\n",cnt);
    printf("满足条件素数值的和=%d",sum);
    writeDAT();
}

void writeDAT()
{
    FILE *fp;
    fp=fopen("out.dat","w");
    fprintf(fp,"%d\n%d\n",cnt,sum);
    fclose(fp);
}这是标准答案  红色的为什么
搜索更多相关主题的帖子: void include 
2013-01-02 17:23
pan569673372
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2013-1-2
收藏
得分:0 
是不是第二个FOR把J一直往上加 当j=i时退出循环就被下面的判断获取了?
2013-01-02 17:28
tollerson
Rank: 1
等 级:新手上路
帖 子:12
专家分:9
注 册:2012-12-31
收藏
得分:0 
素数的定义啊,j从2开始增长,一直到i-1都不出现整除i的情况,当然就判断i是素数了。其实不用增长到i,j^2<=i就可以了
2013-01-02 17:46
bkss111
Rank: 1
来 自:湖北武汉
等 级:新手上路
帖 子:5
专家分:3
注 册:2012-12-28
收藏
得分:0 
当上一个循环顺利运行结束(没有出现break出去的情况)后,此时j==i,证明这个i就是满足条件的素数,sum+=i是计算满足条件所有素数的和,cnt++;是计算满足条件的素数个数。
2013-01-02 21:08
龙航四海
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:58
专家分:102
注 册:2012-10-17
收藏
得分:0 
楼上说的很详细,这只能判断100到1000之间的素数,如果要判断更广范围的,要进行类似的修改
2013-01-02 22:08
快速回复:一道三级C题目 答案没看懂。求帮忙
数据加载中...
 
   



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

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