遇健 发表于 2021-12-17 23:56:02

c语言

看一下这个n!的代码对吗,为啥我的运行结果不对,看图片
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{
        int n = 0;
        int i = 0;
        int m = 1;
        printf("请输入一个数:");
        scanf("%d", &n);
        for (i = 1; i <= n; i++);
        {
                m = m * i;
               
        }
        printf("%d! = %d\n", n, m);

        return 0;
}

梦回连营 发表于 2021-12-17 23:56:03

你for 循环括号后面那里多了一个分号,循环只是自增 i 的值,没有做其它事,循环出来之后 i 是4,4*1 = 4,所以结果是4

loupp 发表于 2021-12-18 10:09:53

兄弟,for语句不能加;啊

傻眼貓咪 发表于 2021-12-18 10:50:38

你的 for 作用域已经结束了

墨迹千易 发表于 2021-12-18 11:31:00

for(i=1;i<=n;i++)后面多加了个; 其他应该是没什么问题的
页: [1]
查看完整版本: c语言