S1E14课程中编程练习的问题(应该花不了大佬多久时间的说,真心求帮助qwq)
#include <stdio.h>int main()
{
int number;
int beichushu;
int i=1;//暂存结果,避免每次检测都要输出
printf("请输入一个整数:");
scanf("%d",&number);
for(beichushu=2;beichushu<(number/2);beichushu++)
{
if(number%beichushu==0)
{
i=0;
}
else
{
i=1;
}
}
if(i=0)
{
printf("该数字不是素数!\n");
}
else
{
printf("该数字是素数!\n");
}
return 0;
}
按设想是一个判断输入是否为素数的程序,但实际上不管是不是素数程序输出都是“该数字是素数!”
所以说是哪里出了问题呢{:10_266:} if(i=0)
if(i==0)
本帖最后由 青出于蓝 于 2021-7-19 09:25 编辑
#include <stdio.h>
int main()
{
int number;
int beichushu;
int i=1;//暂存结果,避免每次检测都要输出
printf("请输入一个整数:");
scanf("%d",&number);
for(beichushu=2;beichushu<number;beichushu++)
{
if(number%beichushu==0)
{
i=0;
}
}
if(i==0)
{
printf("该数字不是素数!\n");
}
else
{
printf("该数字是素数!\n");
}
return 0;
}
1,i==0
2,for循环内去掉else判断 本帖最后由 不二如是 于 2021-7-19 16:14 编辑
经典错误
=赋值
== 等于(判断
结果肯定不一样啊
if(i=0) 永远为假 呜呜呜原来如此,蟹蟹各位大佬了orz @不二如是 烫烫烫的锟斤拷 发表于 2021-7-19 14:16
呜呜呜原来如此,蟹蟹各位大佬了orz
哦哦 打错了
if(I = 0 ) 永远为假
页:
[1]