c++程序逻辑错误,求解!

c++程序逻辑错误,求解!
以下程序,要求用户三个数字,然后打印最大的数字。程序存在逻辑错误,对某些输入数字,不能按预期。求解?
图片说明

3个回答

 你漏掉了 n3 > n2 > n1 的情况,这种情况下,n3也是最大的。

else if (n2 > n3)
cout << n2 << " is the largest.";
修改为
else
{
if (n2 > n3)
cout << n2 << " is the largest.";
else
cout << n3 << " is the largest.";
}

gd6179
gd6179 感谢大神指导!
接近 2 年之前 回复

其实直接写
int max = (n1 > n2) ? n1 : n2;
max = (max > n3) ? max : n3;
cout << max << " is the largest.";
即可。

#include
int main()
{
int max.a,b.c;
printf("请输入abc的值: \n");
scanf("%d",&a);
scanf("%d",&b);
scanf("%d",&c);
max=(a>b)?a:b;
max=(max>c)?max:c;
return 0;
}

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐