标题:将2到100中素数存入数组后如何去除多余的元素
只看楼主
Janssean
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2016-10-29
结帖率:66.67%
已结贴  问题点数:6 回复次数:2 
将2到100中素数存入数组后如何去除多余的元素
#include<stdio.h>
#include<math.h>
void main()
{
int i,j,k,m=0,n,a[50]={0};
for(i=0;i<=100;i++)
{
j=(int)sqrt(i);
for(k=2;k<j;k++)
if(i%j==0)break;
if(k>j)a[m++]=i;
}
for(n=0;n<m;n++)
printf("%d ",a[n]);
}



程序运行后后面一大串0
不赋初值输出的是随机数
求解决
谢谢
搜索更多相关主题的帖子: include 如何 元素 
2017-03-05 11:09
烟雨晨曦
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:7
帖 子:150
专家分:599
注 册:2017-3-5
得分:3 
加个判断if(a[n] != 0)输出


[此贴子已经被作者于2017-3-5 12:40编辑过]

2017-03-05 12:32
yangfrancis
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:141
帖 子:1510
专家分:7661
注 册:2014-5-19
得分:3 
if(k>j)a[m++]=i 这里应该是k==j
2017-03-05 19:40



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




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

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