| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 428 人关注过本帖
标题:c初学者求助
取消只看楼主 加入收藏
jsealove
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2006-7-16
收藏
 问题点数:0 回复次数:3 
c初学者求助

#include "stdio.h"
main()
{int n,i,k;
printf("input n:");
scanf("%d",&n);
for(k=2;k<n;k++)
for(i=2;i<k;i++)
{if(k%i==0) break;
else printf("%4d",k);}
}
以上是小弟写的求输入任意自然数N,求小于N的质数,
可是当我输入的N有2个质数时,就会出现重复现象,
例如输入6时,程序输出结果为3 5 5 5
输入10时,输出结果为3 5 5 5 7 7 7 7 9
请大家帮帮忙.

2006-07-16 02:30
jsealove
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2006-7-16
收藏
得分:0 
谢谢王者,发完帖子知道错误在哪儿,就是不知道怎么解决
原来I==K-1这么简单就可以解决,
我昨天想了一晚上
2006-07-16 08:08
jsealove
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2006-7-16
收藏
得分:0 
求救,次程序不能求出质数2,请问怎么把质数2求出.
另外, #include "stdio.h"
main()
{int n,i,k,count=0;
printf("input n:");
scanf("%d",&n);
for(k=2;k<n;k++)
{for(i=2;i<k;i++)
if(k%i==0) break;else if(i==k-1) {printf("%4d",k);count++;}
if(count==10) {printf("\n");count=0;}}
}
这样的输出结果按10个一行输出
如果把最后一个语句改为if(count%10==0) printf("\n");
输出结果也是每10个一行,但是每行之间又多空出了4行,请问这是为什么?
2006-07-16 08:33
jsealove
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2006-7-16
收藏
得分:0 
谢谢,好心人帮我这个小菜鸟
我一定努力学习去帮助其他新人,来回报你们
2006-07-16 10:09
快速回复:c初学者求助
数据加载中...
 
   



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

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