这是因为你的代码中的条件太“苛刻”,所以导致三个条件中没有一个满足,所以Max仍是原来的初值。修改如下:
#include
int a,b,c,Max=0;
cin >> a >> b >> c;
if (a>b && a>c){
Max=a;
}
if (b>a && b>c){
Max=b;
}
if (c>a && c>b){
Max=c;
}
cout << Max << endl;
return 0;}
这不是初始化为0了吗?
逻辑判读的原因,因为三个if都没有满足条件,所以没有复上值,所以返回的结果是0
虽然我不懂代码,但是如果2 2 1对应a b c的话,明显是a=b,而给出的条件a>b忽视了等于的情况。
菜鸟,初出茅庐的人。
菜鸡,刚玩没多久的人