作为一个初学者在学习到循环结构的时候,遇到了求三个数字中最大的数字的训练题。我思考了三种方法,现在存放于博客作为记录。
if语句嵌套的方式
这种方式是初学者最常用的一种方式,但并不是最简单的方式。
#include<iostream>
using namespace std;
int main()
{
int a, b, c;
cout << "请输入a,b,c三个数的值:" << endl;
cin >> a >> b >> c;
if (a > b)
{
if (a > c)
{
cout << "最大的数是:" << a << endl;
}
else
{
cout << "最大的数是:" << c << endl;
}
}
else
{
if (b > c)
{
cout << "最大的数是:" << b << endl;
}
else
cout << "最大的数是:" << c << endl;
}
system("pause");
return 0;
}
引入布尔变量
这种方式与第一种没有太多的差别,唯一的作用在于帮助初学者在学习C++时更好的理解布尔变量。
#include<iostream>
using namespace std;
int main()
{
int a, b, c;
bool flag = 1;
cout << "请分别输入a,b,c的值:" << endl;
cin >> a >> b >> c;
flag = a > b;
if (flag == 1)
{
flag = a > c;
if (flag == 1)
{
cout << "三个数中最大的数是:"<<a<<endl;
}
else
{
cout << "三个数中最大的数是:"<<c<<endl;
}
}
else
{
flag = b > c;
if (flag == 1)
{
cout << "三个数中最大的数是:"<<b<<endl;
}
else
{
cout << "三个数中最大的数是:"<<c<<endl;
}
}
system("pause");
return 0;
}
使用三目运算符
这种方式应该是初学者能学到的最简单的方式了。
#include<iostream>
using namespace std;
int main()
{
int a, b, c, d;
cout << "请输入三个数a,b,c的值:" << endl;
cin >> a >> b >> c;
d = a > b ? a : b;
d = d > c ? d : c;
cout << "三个数中最大的数是:" << d << endl;
system("pause");
return 0;
}
C++学习记录。