C程序使用函数查找两个数字之间的最大值和最小值
C Program to find maximum and minimum between two numbers using functions
我正在使用函数求解最大和最小值的代码。我写的代码是这样的:
#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:我有一个关于函数的考试,所以使用函数的解决方案会有所帮助。
如果(最大最小==1)
改为if (c==1)
您的问题已解决。
祝你有美好的一天
您应该检查 if(c == 1),而不是 if(maxmin == 1)。
您的函数还可以缩短:
int maxmin(int x, int y)
{
if (x>y)
{
return 1;
}
else
{
return 0;
}
}
此外,我认为您的 scanf 在两个 %d 之间缺少一个逗号。
我正在使用函数求解最大和最小值的代码。我写的代码是这样的:
#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:我有一个关于函数的考试,所以使用函数的解决方案会有所帮助。
如果(最大最小==1)
改为if (c==1)
您的问题已解决。 祝你有美好的一天
您应该检查 if(c == 1),而不是 if(maxmin == 1)。
您的函数还可以缩短:
int maxmin(int x, int y)
{
if (x>y)
{
return 1;
}
else
{
return 0;
}
}
此外,我认为您的 scanf 在两个 %d 之间缺少一个逗号。