if语句的三种形态
形态1:
#include <iostream> using namespace std; int main(void) { int salary; cout << "你月薪多少?"; cin >> salary; if (salary < 20000) { cout << "你是一个好人, 我还不想谈恋爱." << endl; } system("pause"); return 0; }
形态2:
#include <iostream> using namespace std; int main(void) { int salary; cout << "你月薪多少?" << endl; cin >> salary; if (salary < 20000) { cout << "你是一个好人, 我还不想谈恋爱." << endl; } else { cout << "我没有什么要求, 只要你对我好就行." << endl; } system("pause"); return 0; }
形态3
#include <iostream> #include <string> #include <stdio.h> using namespace std; int main(void) { int salary; string houseRet; //是否有房 string carRet; //是否有车 cout << "你的月薪是多少?" << endl; cin >> salary; cout << "你有房吗?" << endl; cin >> houseRet; cout << "你有车吗?" << endl; cin >> carRet; if (salary < 20000) { cout << "你是一个好人, 我现在还不想谈恋爱." << endl; } else if (houseRet == "有") { cout << "我其实没有什么要求,只要你对我好." << endl; } else if (carRet == "有") { cout << "还不错哦, 以后再联系." << endl; } else { cout << "有缘再见." << endl; } system("pause"); return 0; }
if语句的嵌套
实例:
求3个数的最大值。
#include <iostream> #include <windows.h> using namespace std; int main(void) { int x, y, z; cout << "请输入3个整数: " << endl; cin >> x >> y >> z; if (x > y) { if (x > z) { cout << "最大值是: " << x << endl; } else { cout << "最大值是: " << z << endl; } } else { if (y > z) { cout << "最大值是: " << y << endl; } else { cout << "最大值是: " << z << endl; } } system("pause"); return 0; }
嵌套的常见错误(配对错误)
与前面最近的,而且还没有配对的if匹配
错误避免方法:
- 严格使用 { }
- 先写{}再写里面的内容
- 保持良好的“缩进”
switch的基本使用
语法:
switch (x) {
case 表达式1:
语句1
break;
case 表达式2:
语句2
break;
case 表达式3:
语句3
break;
default表达式1:
语句1
break;
}
流程图:
#include <iostream> #include <windows.h> using namespace std; int main(void) { int num; cout << "请输入一个数字: "; cin >> num; switch (num) { case 1: cout << "星期一:包子" << endl; break; case 2: cout << "星期二:馒头" << endl; break; case 3: cout << "星期三:稀饭" << endl; break; case 4: cout << "星期四:白菜" << endl; break; case 5: cout << "星期五:土豆" << endl; break; case 6: case 7: cout << "周末:休息" << endl; break; default: cout << "请输入1-7" << endl; break; } system("pause"); return 0; }
switch和if的选择
switch: 用于int/char/long/long long 类型的变量,和多个特定常量的判断处理。
(float和double类型不可以)
if: 适用于各种逻辑判断