为什么这个找最大值有问题啊
#include<stdio.h>int main()
{
int a,b,c,d,e,f,g,h,i,j,k;
scanf("%d%d%d%d",&a,&b,&c,&d);
d=a+b+c+d;//总成绩
e=(a+b+c+d)/4;//平均分
f=(a>b)?a:b;
g=(c>d)?c:d;
h=(g>f)?g:f;//得到最大值
i=(a>b)?b:a;
j=(c>d)?d:c;
k=(i>j)?j:i;//得到最小值
printf("%d\n%d\n%d\n%d\n",d,e,h,k);
return 0;
} 本帖最后由 jackz007 于 2022-10-30 20:37 编辑
#include<stdio.h>
int main()
{
int a , b , c , d , e , f , h , k ;
scanf("%d%d%d%d" , & a , & b , & c , & d) ;
e = a + b + c + d ; //总成绩
f = e / 4 ; //平均分
h = (a > b && a > c && a > d) ? a : (b > a && b > c && b > d) ? b : (c > a && c > b && c > d) ? c : d ;
k = (a < b && a < c && a < d) ? a : (b < a && b < c && b < d) ? b : (c < a && c < b && c < d) ? c : d ;
printf("%d %d %d %d\n" , e , f , h , k) ;
} jackz007 发表于 2022-10-30 20:13
找最大值还是有问题输入70 80 90 100会出输出340 85 340 70 2207122216 发表于 2022-10-30 20:23
找最大值还是有问题输入70 80 90 100会出输出340 85 340 70
被你的代码带坑里了,键盘输入的成绩 d 被覆盖成了总分,2 楼代码已经改好。
页:
[1]