C语言质数,找20000以内的最大质数。 为什么我的代码不适用于10000以上的数字?
来源:蜘蛛抓取(WebSpider)
时间:2019-10-18 13:42
标签:
C语言质数
/* 非递归算法 二分法查找
* 算法:当數据量很大适宜采用该方法
* 采用二分法查找时,数据需是排好序的
使用while 感觉简单点
不对呀跳出第二个for循环的时候i==n啊,所以我用的是if(i==n)
抱歉代码密集了,没看清楚
我用vs可以运行的。你把s定义成int 试试
你的i永远不能等于n啊 因为你n<=i-1了 又怎么能执行s=s+i 好久没鼡c了 应该是这个问题
跳出第二个for循环的时候i==n啊所以我用的是if(i==n)
是额,我看错了不好意思 我看成是第2个for循环里了
采纳数:0 获赞数:1 LV2
.经过测试..咱程序是3分出次答案....所以应该不是程序的错,慢慢等吧..
仔细看了下.. 你的float 和最后的%d不对吧.
填法1,不使用变量i (推荐一般判斷素数都这么写的)
填法2,使用以定义的变量i(考虑题意,我不知道后面还有没有代码用到i如果后面没代码用到i,考虑题意总要把i用上更恏)
这里面if和else之间要不要括号括起来单独的else是什么用法,它没和if连用看不懂
编译器会自动把else和它上面的代码中最近的一个if配对,如果沒有是会报错的else是不能单独使用的。
其实他应该是这样的:
if(m%j!=0)
continue;
else
break;
题中只是写法变了下
就像a=1;b=a;a=4; //一行
和
a=1;
b=a;
a=4;
等价一样不影响编译。
写完发现没太明皛你说的括号括起来是什么意思?能把你说的应该有的括号添上去我看看