前言:
本文将进一步讲解C++中,条件判断语句以及它是如何运行的以及内部逻辑。
一,if-else,if-else语句。
在if语句中,只能判断两个条件的变量,若想实现判断两个以上条件的变体,就需要使用if-else,if-else语句。
语法:
if(条件1){语句1;语句2;
}//当满足条件1为ture时,被处理。
else if(条件2){语句3;语句4;
}//当条件1为false且条件2为ture时被处理。
else if(条件3){语句5;语句6;
}//可同时列举多个类似条件。
else{语句7
}//当所有条件为false时,被处理。
根据前篇内容,可以就可以写一个简单的计算器。
#include <iostream>
using namespace std;
int main()
{double a, b;//定义变量a,b用于存储所输入的四则运算的两位数。char c;//定义变量c用于存储所输入的四则运算的运算符。double d;//定义变量d用于存储四则运算的结果。cout << "请输入一个四则运算表达式(例如:1 + 2):";cin >> a >> c >> b;//获取输入四则运算表达式,并赋值给相关变量。if (c == '+'){d = a + b;cout << a << " + " << b << " = " << d << endl;}//如果c为+,则执行加法运算,并输出结果。else if (c == '-'){d = a - b;cout << a << " - " << b << " = " << d << endl;}//如果c为-,则执行减法运算,并输出结果。else if (c == '*'){d = a * b;cout << a << " * " << b << " = " << d << endl;}//如果c为*,则执行乘法运算,并输出结果。else if (c == '/'){if (b == 0) {cout << "除数不能为0" << endl;}//如果除数b为0,则输出错误信息。else {d = a / b;cout << a << " / " << b << " = " << d << endl;}}//如果c为/,则执行除法运算,并输出结果。else {cout << "输入的运算符不正确" << endl;}}
运行结果:
二,switch语句。
在C++中,还有一个与if语句原理一致的其他根据条件控制处理的语句,被称为switch语句。
语法为:
switch(表达式){case 值1;语句1;break;//当表达式判断值为1时,进行处理。case 值2;语句2;break;//当表达式判断值为2时,进行处理。case 值3;语句3;break;//当表达式判断值为3时,进行处理。
different:语句4;break';当任何一个表达式判断值都不符合时,进行处理。
}
可以使用switch语句,也写一个可以进行四则运算的简单计算器。
#include <iostream>
#include <string>using namespace std;int main() {double a,b,d;//定义变量a,b用于存储所输入的四则运算的两位数。char c;//定义变量c用于存储所输入的四则运算符。cout << "请输入一个四则运算表达式(例如:1 + 2):";cin >> a >> c >> b;//获取输入四则运算表达式,并赋值给相关变量。switch(c) {case '+':d = a + b;break;//当c为+时,执行a+b,并将结果赋值给d。case '-':d = a - b;break;//当c为-时,执行a-b,并将结果赋值给d。case '*':d = a * b;break;//当c为*时,执行a*b,并将结果赋值给d。case '/':if (b == 0) {cout << "除数不能为0!" << endl;return 0; //当b为0时,输出错误信息并结束程序。}d = a / b;break;//当c为/时,执行a/b,并将结果赋值给d。default:cout << "输入错误!" << endl;//当c不是四则运算符时,输出错误信息并结束程序。}
}
输出: