gpt4 book ai didi

c - 这个求 4 个给定数字中最大的 C 程序出了什么问题

转载 作者:行者123 更新时间:2023-11-30 15:37:26 25 4
gpt4 key购买 nike

我编写了一个简单的 C 程序,用于查找 4 个数字中最大的一个。我正在尝试所有可能的 4 位数组合,目前限制为 1234。

由于在编写此问题时出现一些重复的格式错误,我已将代码发布到其他网站。

#include <stdio.h>

int main() {
int a, b, c, d;
printf("Input A, B, C and D: ");
scanf("%d%d%d%d", &a, &b, &c, &d);

if(a > b) {
if(a > c) {
if(a > d) {
printf("A is greater.");
} else {
printf("D is greater.");
}
}
} else if(b > c) {
if(b > d) {
printf("B is greater.");
} else {
printf("D is greater.");
}
} else if(c > d) {
printf("C is greater.");
} else printf("D is greater");
return 0;
}

问题是它不适用于

a = 2

b = 1

c = 3

d = 4

a = 2

b = 1

c = 4

d = 3

我的实现有什么问题吗?我目前正在尝试使用尽可能少的比较(ABCD 最少 6 个可能的比较),例如 a>b、b>c、c>d 等。提前致谢。

最佳答案

问题是 A 是否大于 B 但小于 C。

if(a > b) {
if(a > c) {
if(a > d) {
printf("A is greater.");
} else {
printf("D is greater.");
}
} else if(c > d) {
printf("C is greater.");
} else {
printf("D is greater");
}
}

这应该可以解决问题。

关于c - 这个求 4 个给定数字中最大的 C 程序出了什么问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22236467/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com