可以帮我看一下哪错了嘛?

为什么较大值会是78?

img

可以比较出来

img


只是输入的时候 输入a b 不要输入成a,b 这样接收的不正确
跟题主你代码一样,代码如下:

#include<stdio.h>
int max(int a,int b);

int main(){
    int a,b,c;
    printf("请输入两个整数:\n");
    scanf("%d%d",&a,&b);
    c = max(a,b);
    printf("两个数的较大值为:%d\n",c);
    return 0;
}

int max(int a,int b){
    int z;
    z = (a>b)?a:b;
    return z;
}

希望对题主有所帮助,望采纳!!

scanf("%d %d", &a, &b)
然后在终端输入的时候输入78 256,中间的空格不可以缺少

因为你的代码的输入格式是ab,但是你在运行测试的时候输入格式是a,b
所以后台比较的是a和逗号的阿斯特码值的大小.因此最终结果错误.
只要输入的时候严格按照代码的格式就行了.