C++记录(3)

C++记录(3)

突然想先分享一首歌,以后再做记录之前都会分享我正在听的一首歌来表示开始吧

l saw you smile today,l almost forgot you faded away

if语句的应用

直接应用的有

if(ture)
{
	//所要执行的内容
}
else(ture)
{
	//所要执行的内容
}

例如

 if (zhangsan_age > 18) cout << "张三是成年人" << endl;

if语句的嵌套应用

int zhangsan_age = 0, zhangsan_sex = 0;
cin >> zhangsan_age >> zhangsan_sex;
if (zhangsan_age < 18)
{        
	if (zhangsan_sex == 1)
	{ 
	         cout << "张三是个男孩" << endl;
	}        
	else if (zhangsan_sex == 2)        
	{         
		 cout << "张三是个女孩" << endl;        
	}
}
else if (zhangsan_age >= 18)
{
        if (zhangsan_sex == 1)
        cout << "张三是个男青年" << endl;        
        else if (zhangsan_sex == 2)                
        cout << "张三是个女青年" << endl;
}

这样写很是麻烦,而且会嵌套了好几层,有没有更简便的写法呢?当然有了,就是使用逻辑运算符


if (zhangsan_age >= 1 && zhangsan_sex <= 18)
{
        cout << "张三是个男孩" << endl;
}

这样就比较精简,也让代码清晰
下面列出逻辑运算符的Neo荣

C++中提供了三种逻辑运算符:

①、&& 逻辑与 相当于其他语言中的 AND
②、|| 逻辑或 相当于其他语言中的 OR
③、! 逻辑非 相当于其他语言中的 NOT

逻辑运算符的运算规则:

a 和 b 是表达式

  1. a && b 若 a 和 b 同时为真,a && b 的结果为真,只要有一个为假,则 a && b 的结果为假
  2. a || b 若 a 或 b 其一为真,a || b 的结果为真,若 a 和 b 同时为假,则 a || b 的结果为假
  3. !a 若 a 为真,则 !a 为假,若 a 为假,则 !a 的结果为真

举几个例子:

  1. 若 int x = 5; 则 !x 的值就是0,因为 x 的值是5,非0,所以是真,!x 就是假了,也就是0了;
  2. 若 int x = 5, y = 4; 那么 x && y 的结果就是真,int z = x && y; 你会发现 z 的值是1;
  3. 若 int x = 5, y = 4; 那么 !x || y 的结果是什么呢,这里涉及到运算符优先级,可以看我前面记录,这里的结果是先算逻辑非(!)再算逻辑或(||) 所以结果是真
冒号表达式

表达式1?表达式2:表达式3
若表达式1为真,则返回表达式2的值,若表达式1为假,则返回表达式3的值,

max = x > y ? x : y;
swich表达式的使用

具体使用格式如下

switch(表达式)
{
case 常量表达式1:语句1
break;
case 常量表达式2:语句2
break;
case 常量表达式3:语句3
break;

case 常量表达式n语句n
break;
default:语句n+1;
break;
}

格式说明:

①、switch后面括号内的表达式必须是数值类型(包括字符类型)的数据,不能使用字符串;

②、如果switch表达式的值与某一个case子句中的常量表达式的值匹配时,就执行此case子句中的内嵌语句,如果所有的case常量表达式都不匹配,那么就执行default子句的内嵌语句;

③、每个case标签的常量表达式的值必须不能相同,否则会出现错误的情况,而且以当前vs2013的编译器来说编译也会不通过的;

④、每个case语句,包括default语句的顺序不影响结果,可以任意放置,比如把default放在上面也是一样的;

⑤、switch语句也是本着从上往下的顺序执行,可这个从上往下是以第一个case匹配到的常量表达式开始,往下执行。如果执行完一个case语句之后不想继续执行其他case语句可以使用break关键字跳出switch结构即可;


#include <iostream>
using namespace std;
int main()
{ 
	cout << "请输入一个数字:" << endl;
	int num = 0;
	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;        
	default:                
	cout << "今天是周末" << endl;                
	break;        
	}        
	return 0
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值