C语言运算符深入探究优先级与结合性及种类

 更新时间:2022年05月24日 09:54:43   作者:liao-xin  
C语言运算符号指的是运算符号。C语言中的符号分为10类:算术运算符、关系运算符、逻辑运算符、位操作运算符、赋值运算符、条件运算符、逗号运算符、指针运算符、求字节数运算符和特殊运算符

1、常用运算符分类

2、算术运算符

代码:

#include <stdio.h>
#include <math.h>
int main(void)
{
	int a = 10; // 确定 a的值。
	int b = 20; // 确定 b的值。
	int C,D,E,F,G,H,I,J,K,L,M; //定义 C,D,E,F,G,H,I.
	C=a+b;  //相加
	D=b-a;   //相减
	E=a*b;   //相乘
	F=a/b;   //相除
	G=a%b;    //取余
	//J=a++;   //前自增
	K=++a;   //后自增
	//L=b--;   //前自减
	M=--b;   //后自减
	H=pow(a,2);  //平方
	I=a*(a+b); 
	printf("C=%d\nD=%d\nE=%d\nF=%d\nG=%d\nH=%d\nI=%d\nK=%d\nM=%d\n",C,D,E,F,G,H,I,K,M);
}

解释:

1、c语言相加减的表达方式和数学一样都是用“+” “-”;

2、C语言的乘法和除用“ * ”,“ / ”。

3、% 这个符号的意思是取余数。

4、当我们想求a的平方的时候我们不能直接a^2,这样的用法是错误的。

在开始我们先导入一个数学库:#include <math.h>

接着在使用pow函数:H=pow(a,2); 这就是a的平方使用方法。

5、++a,相当于10+1,而a++相当于9+1,a–和–a,同理。

结果:

3、赋值运算符

代码:

#include <stdio.h>
int main (void)
{
	int a=10;
	int b=20;
	int c=30;
	int d=40;
	int e=33;
	int A,B,C,D,E,F;
	A = b;     // a赋值给A,A=10;
	B = a+=2;  // a加2等于B,B=12;
	C = b-=3;  // b减3等于C, C=17;
	D = c*=2;  // c乘以2等于D, D=60; 
	E = d/=2;  // d除以2等于E, E=20;
	F = e%=2;  // e除以2取余数等于F, F=1;
	printf("A = %d\nB = %d\nC = %d\nD = %d\nE = %d\nF = %d\n",A,B,C,D,E,F);
	return 0;
}

结果:

4、比较运算符

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

代码:

#include <stdio.h>
int main (void)
{
	int a=10;
	int b=20;
	printf("%d\n",a==b);  //相等于
	printf("%d\n",a!=b);  // 不等于
	printf("%d\n",a<b);  // 小于
	printf("%d\n",a>b);  //大于
	printf("%d\n",a<=b);  //小于等于
	printf("%d\n",a>=b);  //大于等于
	return 0;
}

结果:

5、逻辑运算符

代码:

#include <stdio.h>
int main (void)
{
	//0为假,1为真
	int a=0;
	int b=1;
	printf("%d%d\n",!a,!b); //非运算 ,假变真,真变假。
	printf("%d\n",a&&b);  // 与运算,a ,b 为真都为真,或者假。
	printf("%d\n",a||b);  // 或运算,a ,b有一个为真都为真,二者都为假才为假。
	return 0;
}

结果:

6、运算符优先级

7、运算关系转换

类型转换的原则:占用内存字节数少(值域小)的类型,向占用内存字节数多(值域大)的类型转换,以保证精度不降低。

到此这篇关于C语言运算符深入探究优先级与结合性及种类的文章就介绍到这了,更多相关C语言运算符内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java C++算法题解leetcode1592重新排列单词间的空格

    Java C++算法题解leetcode1592重新排列单词间的空格

    这篇文章主要为大家介绍了Java C++算法题解leetcode1592重新排列单词间的空格示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-09-09
  • 浅谈C++重载、重写、重定义

    浅谈C++重载、重写、重定义

    下面小编就为大家带来一篇浅谈C++重载、重写、重定义。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-06-06
  • MoveWindow() SetWindowPos()的区别于联系

    MoveWindow() SetWindowPos()的区别于联系

    这篇文章主要介绍了VC++中MoveWindow() SetWindowPos()的区别于联系,需要的朋友可以参考下
    2015-01-01
  • C语言实现控制台扫雷小游戏

    C语言实现控制台扫雷小游戏

    这篇文章主要为大家详细介绍了C语言实现控制台扫雷小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-11-11
  • C++实现图书管理系统(文件操作与类)

    C++实现图书管理系统(文件操作与类)

    这篇文章主要为大家详细介绍了C++实现图书管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • C语言数据结构之动态分配实现串

    C语言数据结构之动态分配实现串

    这篇文章主要介绍了C语言数据结构之动态分配实现串的相关资料,希望通过本文能帮助到大家,让大家实现数据结构中动态分配实现串的实例,需要的朋友可以参考下
    2017-10-10
  • C语言类的双向链表详解

    C语言类的双向链表详解

    大家好,本篇文章主要讲的是C语言类的双向链表详解,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2022-01-01
  • QT实现简单五子棋游戏

    QT实现简单五子棋游戏

    这篇文章主要为大家详细介绍了QT实现简单五子棋游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-05-05
  • C++设计模式之装饰模式

    C++设计模式之装饰模式

    这篇文章主要介绍了C++设计模式之装饰模式,装饰模式能够实现动态的为对象添加功能,是从一个对象外部来给对象添加功能,需要的朋友可以参考下
    2014-10-10
  • C语言中的各种文件读写方法小结

    C语言中的各种文件读写方法小结

    这篇文章主要介绍了C语言中的各种文件读写方法小结,是C语言入门学习中的基础知识,需要的朋友可以参考下
    2015-07-07

最新评论