我自己的想法如下:编译显示0错误,0警告,但是就是什么东西都没有。郁闷求指导:
#include <stdio.h>
int main()
{
int i,n;
for(i=201;n<=i;i++)
{
if(i%n==0)break;
if(i=300)break;
if(n=i)
printf("%d",i);
}
return 0;
}
啊。。我的水平真的这么菜吗?我想说的是要从200——300中选素数。就从201开始一个个去试(循环)判断素数的标准不是除了0和1本身不能整出的数吗?打个比方:为什么说17是素数?我的想法就是17除以(2,3,4,5,6……)都不行,到17除以17才可以。我的n值就是这个不断变大的变量啊。但是n<=i.我这样说你能明白我的思路没?
追答。。。楼主你写少了一个循环。。。
for(i=201;n<=i;i++)
应该是分解成
for(i=201;i<=300;i++)
for(j=2;j<i;j++)
if(i%j==0)break;
很感谢啊。。。。。。那个判断到根号n-1就好,课本上也有,但是不理解。。
追答嘿嘿嘿~不谢啦,没有和一楼一样给你写出代码来。判断到根号n-1就行了是数学证明题~可以不用理解~如果很想知道可以看高数书呀!~要么问高数老师也ok!~