标题:输出素数 编译的,没问题 但只输出一个2,,求指教、
只看楼主
花脸
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:9
帖 子:788
专家分:907
注 册:2017-1-4
结帖率:95.37%
已结贴  问题点数:20 回复次数:2 
输出素数 编译的,没问题 但只输出一个2,,求指教、
#include<stdio.h>
#include<math.h>
int main()
{
    int i,j,n,a[101];               //定义包含101个元素
    for(i=1;i<=100;i++)             //a[0]不用,只用a[1]~a[100]
       a[i]=i;                     //使a[1]~a[100]的值为1-100
    a[1]=0;                        //先挖掉a[1]
    for(i=2;i<sqrt(100);i++)
       for(j=i+1;j<=100;j++)
       {
              if(a[i]!=0&&a[j]!=0)
                 if(a[j]%a[i]==0)
                   a[j]=0;             //挖掉非素数
       }
    printf("\n");
    for(i=2,n=0;i<=100;i++)
    {
        if(a[i]!=0)
        {
            printf("%5d",a[i]);
            n++;
        }
        if(n==10)
        {
            printf("\n");
            n=0;
        }
    printf("\n");
    return 0;
    }
}
搜索更多相关主题的帖子: include 元素 
2017-02-23 19:50
yslief
Rank: 5Rank: 5
来 自:水泊
等 级:职业侠客
帖 子:57
专家分:340
注 册:2016-11-14
得分:20 
return 0; 的位置放得不佳, 不然循环一次就结束, 放到for循环外边即可
程序代码:
 for(i=2,n=0;i<=100;i++)
    {
        if(a[i]!=0)
        {
            printf("%5d",a[i]);
            n++;
        }
        if(n==10)
        {
            printf("\n");
            n=0;
        }
    printf("\n");
    
    }
    return 0;
2017-02-23 20:21
花脸
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:9
帖 子:788
专家分:907
注 册:2017-1-4
得分:0 
回复 2楼 yslief
恩 好了,谢了。
2017-02-23 21:01



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-474486-1-1.html




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

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