镜花水月(二)

其它运算

本回开讲前我们先回顾一下上回书的内容。
上回书我们学习了:

     
==   >  >=   <   <=  !=
&&   ||   !
&   |   ~   ^   >>   <<

     
本回书我们学习算术运算:
在这里插入图片描述
在这里插入图片描述
     
赋值运算:

x = 10;      //把 x 的值设置为 10, 把 10 写到变量 x 中。
x = 10 + a;

赋值运算左边必须是变量
“优先级”很低,只比 “,”(逗号元素符)高。

     
复合赋值运算

x += 10;      // x = x + 10
x -= 10;       // x = x - 10

类的还有: *= , /=, %= 等。

     
自增自减运算

i++   =>   i = i+1
++i   =>   i = i+1

i--    =>   i = i-1
- - i    =>    i = i-1

     
i = 100;
x = i++;   // x = 100

i = 100;
x = ++i;   // x= 101

在这里插入图片描述
注意:

  1. 只能对变量做++和 - - 运算,不能对常量和表达式做++和 - - 运算
    5++; //ERROR
    (3+x)++; //ERROR

  2. 建议尽量使用前缀自增(自减),以避免错误。

     
逗号运算符

逗号运算符优先级最低。康康下面例子中的代码。

#include <stdio.h> 
int main(void) { 
	int x; 
	// 先计算 x = 3+5, 再计算 3*5 ,因为逗号优先级最低,
	//赋值运算算出3+5后赋给x整个赋值运算结束
	x = 3+5, 3*5, 10/5; 
	printf("x=%d\n", x); //x=8 
	
	//取最后一个表达式的值,作为整个“逗号表达式”的值 
	//因为括号的原因,三个值依次赋给x,最后值为10/5
	x = (3+5, 3*5, 10/5); 
	cout << x << endl; //x=2 
	
	return x; 
}

     
三目运算符

条件 ? 表达式 1 :表达式 2

如果条件为真,就取表达式 1 作为整个表达式的值
如果条件为假,就取表达式 2 作为整个表达式的值

#include <stdio.h> 
#include <Windows.h> 

using namespace std; 

int main(void) { 
	int salary; 
	printf("请输入您的月薪: "); 
	scanf("%d", &salary);
	
	//salary大于30000为真,结果为“老鸟”,否则为“菜鸟”
	cout << (salary > 30000 ? "老鸟" : "菜鸟") << ", 晚上好!" << endl;
	
	system("pause"); 
	return 0; 
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值