运算符与表达式

本文介绍了C语言中的算数运算符,包括自增运算,并通过示例区分了前自增与后自增的区别。同时,讲解了赋值、比较和逻辑运算符的使用,以及运算符的优先级。此外,还探讨了类型转换,包括自动转换和强制类型转换,并提供了相关示例。
摘要由CSDN通过智能技术生成

常用运算符分类

在这里插入图片描述

算数运算符

在这里插入图片描述
自增
前自增:先自增1,再计算表达式。
后自增:先计算表达式,再自加1。
示例

#include<stdio.h>
int main(void)
{
	int a = 10;
	int b = ++a * 10;//前自增,先自加1再计算表达式的值
	printf("%d\n", b);
	printf("%d\n", a);
	return 0;
}

结果:

110
11
#include<stdio.h>
int main(void)
{
	int a = 10;
	//int b = ++a * 10;
	int b = a++ * 10;//后自增,计算完表达式后再自加1。
	printf("%d\n", b);
	printf("%d\n", a);
	return 0;
}

结果:

100
11

赋值运算符

在这里插入图片描述

比较运算符

  • C 语言的比较运算中, “真”用数字“1”来表示, “假”用数字“0”来表示。

在这里插入图片描述
示例

#include<stdio.h>

int main(void)
{
	int a = 10;
	int b = 20;
	int c = 30;

	printf("%d\n", c = ++a <= b * 2);//运算优先级
	printf("%d\n", a);
	printf("%d\n", b);
	printf("%d\n", c);

	return 0;
}

结果:

1
11
20
1

逻辑运算符

在这里插入图片描述

运算符优先级

单目运算符高于双目运算符
在这里插入图片描述
在这里插入图片描述在这里插入图片描述常用的运算符优先级
在这里插入图片描述

逗号表达式:将逗号后面的值赋值给等号前面的变量。
示例

int main(void)
{
	int a = 10;
	int b = 20;
	int c = (a, b+10);
	printf("%d\n", c);

	return 0;
}

结果:

30

类型转换

 数据有不同的类型,不同类型数据之间进行混合运算时必然涉及到类型的转换问题。
转换的方法有两种:

  • 自动转换(隐式转换):遵循一定的规则,由编译系统自动完成。
  • 强制类型转换:把表达式的运算结果强制转换成所需的数据类型。

类型转换的原则:占用内存字节数少(值域小)的类型,向占用内存字节数多(值域大)的类型转换,以保证精度不降低。
在这里插入图片描述
强制转换
强制类型转换指的是使用强制类型转换运算符,将一个变量或表达式转化成所需的类型。
示例

#include<stdio.h>

int main(void)
{
	float p = 3.99;
	int w = 2;
	//隐式转换
	//double sum = p * w;

	//(数据类型) 强制类型转换匀运算符,不会四舍五入
	int sum =(int) p * w;
	//int sum = (int)(p*w);
	printf("%d\n", sum);

	return 0;

}

结果:

6
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值