输出1到100的素数
输出结果出错,求指点。谢谢各位!
#include <stdio.h>
int main()
{
int x=2;
int i=2;
int n=1;
for(;x<100;x++){
for(;i<x;i++){
if(x%i==0){
n=0;
break;
}
}
if(n==1){
printf("%d ",x);
}
}
return 0;
} 第10行加上n = 1,第11行改成for(i=2;i<x;i++)#include <stdio.h>
int main()
{
int x=2;
int i=2;
int n=1;
for(;x<100;x++){
n = 1;
for(i = 2;i<x;i++){
if(x%i==0){
n=0;
break;
}
}
if(n==1){
printf("%d ",x);
}
}
return 0;
} 我复制了你修改后的代码,但它只输出了2 3 懒爷驾到 发表于 2022-11-21 19:59
我复制了你修改后的代码,但它只输出了2 3
{:10_277:}我这是正常的 我也不知道怎么回事,现在又可以了。
所以不能在循环外给 i & n 赋值吗 懒爷驾到 发表于 2022-11-21 20:28
我也不知道怎么回事,现在又可以了。
所以不能在循环外给 i & n 赋值吗
他每一轮循环都会改变 i 和 n 的值,所以要重新赋值 我懂了,谢谢!!!
页:
[1]