永发信息网

用C#语言编写求出100以内所有的素数,并输出。

答案:3  悬赏:0  手机版
解决时间 2021-04-04 05:05
用C#语言编写求出100以内所有的素数,并输出。
最佳答案
huiyangzhuang的回答是错误的,并且还是复制粘贴的C代码,并且非C#,以下是我给的亲测OK的代码,你复制粘贴即可正常运行:
========================================================
private void button1_Click( object sender, EventArgs e )
{
for( int i = 1; i <= 100; i += 2 )
{
if( i == 1 )
{
textBox1.Text = 2.ToString();
continue;
}
bool b = true;
for( int j = 3; j <= i / 3; j += 2 )
{
if( i % j == 0 )
{
b = false;
break;
}
}
if( b ) textBox1.Text += " " + i.ToString();
}
}
========================================================
以下是解释huiyangzhuang的代码为什么是“错误”的(可以不看):
huiyangzhuang的代码先不说能不能得到正确的结果,光从他的代码来分析,可以优化减少5倍左右的计算量,也就是他的代码多进行了5倍左右的完全不必要的计算,所以说是错误的。
以下在他的原代码上进行注释指出:
========================================================
bool JudegeNum(int num)
{
if(num == 1) //错误,此判断完全多余,可以直接删除,
{ //因为1不会进入下面的循环,不进入循环同样会return true,
return true; //并且1不是素数!所以应该return false才对!
}
//错误,此处多进行了3倍左右循环,可改为:for(int i=3; i<=num/3; i+=2)
//如果num能被偶数整除,那他就一定能被2整除,那他就一定是一个偶数,
//而偶数一定不是素数,所以偶数根本不要判断,后面的自己想……
for(int i=2; i<num/2; i++)
{
if(num%i == 0)
{
return false;
}
}
return true;
}
给出主函数
int main()
{
//错误,此处多进行了2倍左右循环,可改为:for(int i=1; i<=100; i+=2)
//因为偶数一定不是素数(偶数能被2整除),
//所以偶数完全没必要检测,所以是i+=2,而不是i++
for(int i=1; i<=100; i++)
{
if(JudgeNum(i) == true)
{
//输出该值
printf("%d\r\n", i);
}
}
}

========================================================
全部回答
static void main(string[] args) { int i, j; for (i = 2; i < 100;i++ ) { for (j = 2; j <=i/2; j++) { if (i % j == 0) break; } if (j > i / 2) console.writeline("素数: " + i); } }
仅供参考: bool JudegeNum(int num) { if(num == 1) { return true; } for(int i=2; i<num/2; i++) { if(num%i == 0) { return false; } } return true; } 给出主函数 int main() { for(int i=1; i<=100; i++) { if(JudgeNum(i) == true) { //输出该值 printf("%d\r\n", i); } } }
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
单选题Having worked abroad for&
地下部分用英语怎么说,骑自行车摔到在地的英
明日之后别名是什么?还有这部电影主要讲什么
请问120805 Running man 的一首背景音乐?
生猪肉放冰箱冷藏多久,新鲜猪肉放冰箱冷冻能
心理咨询师有用吗好考吗?大庆有培训机构吗?
54万元按万分之五每天递减式返.返完54万要多
比喻人物外貌的句子,描写女孩外貌的句子
有会看相的老师吗
譺望你,怕你只想躲避,今夜唏嘘,不想讲起 粤语
我15 岁,我和男朋友第一次papapa,大概做了
怎么完全卸载qq安全助手?
涂鸦上帝幸存者攻略,幸存者任务怎么完成
人的性别决定于那个形成时期A.受精卵B.胎儿C.
庞葱说虎阅读答案
推荐资讯
单人快板幽默台词,校园脱口秀台词及很好笑的
借我春风三千里催得百花次第开谁的诗句
百盛万达影城8月10有什么电影
根据拼音将汉字依次填在方格内,书写规范、工
想知道: 常州市 从漕桥到无锡微研精密冲压件
Jenny didn't say anything and left .改
马自达cx5,和柯珞克哪个好
闺蜜恋爱祝福语大全,感情名言名句大全
喜欢的人不搭理你 可你想搭理他 有什么狠招
题跋 提拔
我自信!我拼搏!我成功!作文550字
凯木装饰材料衣柜橱柜经营部怎么去啊,有知道
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?