这个哪个错了。c语言问题

img

输出那句改成sum(n)

img

你没有往sum函数传参,将主函数输出语句中的sum改为 sum(n) 就可以了。
望采纳!!

printf("1到%d的和是%d",n,sum(n));

问题多了,你main 中都没有调用子函数啊,子函数也写错了
修改如下:

int sum(int n)
{
    int s = 0;
    while(n>0)
    {
        s += n;
        n--;
    }
    return s;
}
int main()
{
    int n;
    scanf_s("%d",&n);
    printf("1到%d的和是:%d\n",n,sum(n));
    return 0;
}