C程序,使用函数查找两个数字之间的最大值和最小值

问题描述 投票:0回答:2

我正在解决使用函数的最大和最小代码。我写了这样的代码:

#include <stdio.h>

int maxmin(int x, int y);

int main () {
    int a, b, c;

    scanf("%d%d", &a, &b);

    c = maxmin(a, b);

    if (maxmin == 1) {
        printf("%d is maximum,%d is minimum", a, b);
    }
    else
        printf("%d is maximum,%d is minimum", b, a);

    return 0;    
}

int maxmin(int x, int y) {
    int XisMax = 0;
    if (x > y) {
        XisMax=1;
    }
    else {
        XisMax=0;
    }
    return XisMax;
}

所以我的输出显示了此结果:

Input:9,10;
10 is maximum,9 is minimum

Input:10,9;
9 is maximum,10 is minimum

这里有什么错误?我该怎么办?

PS:我对功能进行了考试,因此使用功能的解决方案将有所帮助。

c function recursion max min
2个回答
1
投票

如果(maxmin == 1)

更改为if (c==1)

您的问题已解决。祝你有美好的一天


0
投票

您应该检查if(c == 1),而不是if(maxmin == 1)。

您的功能也可以缩短:

int maxmin(int x, int y)
{
    if (x>y)
    {
        return 1;
    }
    else
    {
       return 0;
    }
}

此外,我认为您的scanf缺少两个%d之间的逗号。

© www.soinside.com 2019 - 2024. All rights reserved.