烫烫烫的锟斤拷 发表于 2021-7-19 08:52:16

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:}

人造人 发表于 2021-7-19 09:11:44

if(i=0)
if(i==0)

青出于蓝 发表于 2021-7-19 09:24:00

本帖最后由 青出于蓝 于 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;
}

青出于蓝 发表于 2021-7-19 09:31:47

1,i==0
2,for循环内去掉else判断

万千只cnm 发表于 2021-7-19 11:54:00

本帖最后由 不二如是 于 2021-7-19 16:14 编辑

经典错误
=赋值
== 等于(判断
结果肯定不一样啊
if(i=0) 永远为假

烫烫烫的锟斤拷 发表于 2021-7-19 14:16:46

呜呜呜原来如此,蟹蟹各位大佬了orz

青出于蓝 发表于 2021-7-19 15:04:12

@不二如是

万千只cnm 发表于 2021-7-19 15:45:06

烫烫烫的锟斤拷 发表于 2021-7-19 14:16
呜呜呜原来如此,蟹蟹各位大佬了orz

哦哦 打错了
if(I = 0 ) 永远为假
页: [1]
查看完整版本: S1E14课程中编程练习的问题(应该花不了大佬多久时间的说,真心求帮助qwq)