C语言运算符

1. 算术运算符

运算符 术语 示例 结果
+ 正号 +3 3
- 负号 -3 -3
+ 10 + 5 15
- 10 - 5 5
* 10 * 5 50
/ 10 / 5 2
% 取余(取模 Modulo) 10 % 3 1
// 目标:掌握算数运算的基本语法
int main(void)
{
   
	int m = +3;
	int n = -3;
	printf("m=%d, n=%d\n", m, n);

	int a = 10, b = 5;
	printf("a+b=%d\n", a + b);
	printf("a-b=%d\n", a - b);
	printf("a*b=%d\n", a * b);
	printf("a/b=%d\n", a / b);
	printf("10%%3=%d\n", 10 % 3);  // 在printf的格式串中显示 %号, 需要使用 %%

	// 3 % 10 取余结果是多少呢?
	printf("3%%10=%d\n", 3 % 10);  // 3
    
	return 0;
}

注意事项

  1. 先 * / %,后 + -。
  2. 除法
    • 两整数相除,结果整数(舍小数部分)
    • 两浮点数相除,结果 double 浮点数
    • 整数和实数相除,自动类型转换为实型
    • 不允许 除 0(与数学一样)
  3. 取模(取余)
    • 运算数必须是整型
    • 对负数取余,结果为余数的绝对值
    • 不允许 除 0(与数学一样)
// 目标: 掌握算术运算符使用特性
int main(void)
{
   
	// 先乘除后加减
	printf("%d\n", 4 + 6 % 5);	// 5

	// 两整数相除,结果整数(舍小数部分)
	printf("%d\n", 19 / 10);	// 1

	// 两浮点数相除,结果 double 浮点数, 默认保留 6 位小数
	printf("%lf\n", 3.6 / 1.3);	// 2.769231

	// 整数和实数相除,自动类型转换为实型
	printf("%lf, %llu\n", 6 / 2.0, sizeof(6/2.0));  // 表达式结果占 8 字节, double 类型.

	// 除 0 不允许
	printf("%d\n", 6 / 0);  // 被零除或对零取余 错误.

	// 取余运算,参与运算的操作数,必须为整数
	printf("%d\n", 7.3 % 2);	// 表达式必须包含整数 错误.

	// 对负数取余,结果为余数的绝对值
	printf("%d\n", 7 % -5);		// 2

	// 对 0 取余不允许
	printf("%d\n", 6 % 0);  // 被零除或对零取模 错误.

	return 0;
}

总结

算数运算符有哪些?

  • 先 * / %,后 + -。

/ 运算注意什么?

  • 两整数相除得整数。 运算表达式遵循类型转换规则

% 运算注意什么?

  • 运算数必须是整数。 负数取余结果为正。

2. 比较运算符

基础语法

运算符 作用 示例 结果
< 判断 小于 4 < 3 不成立(假):0
<= 判断 小于等于 4 <= 3 不成立(假):0
> 判断 大于 4 > 3 成立(真):1
>= 判断 大于等于 4 >= 4 成立(真):1
== 判断 相等 4 == 3 不成立(假):0
!= 判断 不相等 4 != 3 成立(真):1

**注意:**判断 “相等”,使用 “==”, 不能使用 “=”(赋值符)

优先级

  1. 整体,比算术运算符 低。
  2. 整体,比赋值运算符 高。
  3. > >= < <= 高于 == !=
// 目标: 掌握 比较运算符语法 和 优先级 
int main(void)
{
   
	// 成立 1, 不成立 0
	printf("10 > 10: %d\n", 10 > 10);
	printf("10 >= 10: %d\n", 10 >= 10);
    
	int a = 10;
	printf("10 <= a: %d\n", 10 <= a);
	printf("10 < a: %d\n", 10 < a);
	
	printf("a != 10: %d\n", a != 10);
	
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值