不愿秃头胡少年 发表于 2021-9-22 21:49:35

求输入值的阶乘,

int main()
{
        int a = 1;
        int b = 0;
        int n = 0;

        scanf("%d ", &n);

        while (b <= n)
        {
                a *= b;
                b++;
        }

        printf("%d ", a);

        return 0;
}

警告        C6031        返回值被忽略: “scanf”。        Project1        D:\2021-my c\text-9-11\Debug\Project1\Project1\text1.c        9       

Max472 发表于 2021-9-22 21:56:12

能运行不就行了

不愿秃头胡少年 发表于 2021-9-22 22:27:00

Max472 发表于 2021-9-22 21:56
能运行不就行了

算不了,就是一个废程序

此方星河 发表于 2021-9-22 22:53:20

发现了很多问题,另外以后发代码请用代码格式发哈~,这样方便大家复制,就是<>标志
#include <stdio.h> //任何时候不能忘记这一条语句

int main()
{
      int a = 1;
      int b = 1; // b赋值为1
      int n; // 不能先赋值,再用scnaf函数

      scanf("%d", &n); // scanf函数最好别加空格

      while (b <= n)
      {
                a *= b; // 如果赋值b为0。你的第一次运行,不管怎么样,a为0,导致以后a一直为0
                b++;
      }

      printf("%d ", a);

      return 0;
}

此方星河 发表于 2021-9-22 22:53:52

Max472 发表于 2021-9-22 21:56
能运行不就行了

不行的,报错就是不行的哦~

jhq999 发表于 2021-9-23 06:35:16

错在b的初值等于0;应该等于1

晴雨皆宜 发表于 2021-9-23 11:50:03

开卷有益,多多益善····

不愿秃头胡少年 发表于 2021-9-24 15:46:30

此方星河 发表于 2021-9-22 22:53
发现了很多问题,另外以后发代码请用代码格式发哈~,这样方便大家复制,就是标志

谢谢了,问题解决了
页: [1]
查看完整版本: 求输入值的阶乘,