当前位置: 首页 > 编程笔记 >

C 语言基础----详解C中的运算符

何聪
2023-03-14
本文向大家介绍C 语言基础----详解C中的运算符,包括了C 语言基础----详解C中的运算符的使用技巧和注意事项,需要的朋友参考一下

C语言中又有哪些运算符呢?

如下所示:

※ 算术运算符

※ 赋值运算符

※ 关系运算符

逻辑运算符

※ 三目运算符

C语言基本算术运算符如下表:

除法运算中注意:

如果相除的两个数都是整数的话,则结果也为整数,小数部分省略,如果两数中有一个为小数,结果则为小数。

取余运算中注意:

该运算只适合用两个整数进行取余运算
运算后的符号取决于被模数的符号,如(-10)%3 = -1;而10%(-3) = 1。
注:C语言中没有乘方这个运算符,也不能用×,÷等算术符号。

赋值运算符

下表列出了 C 语言支持的赋值运算符:

运算符 描述 实例

= 简单的赋值运算符,把右边操作数的值赋给左边操作数 C = A + B 将把 A + B 的值赋给 C

+= 加且赋值运算符,把右边操作数加上左边操作数的结果赋值给左边操作数 C += A 相当于 C = C + A

-= 减且赋值运算符,把左边操作数减去右边操作数的结果赋值给左边操作数 C -= A 相当于 C = C - A

= 乘且赋值运算符,把右边操作数乘以左边操作数的结果赋值给左边操作数 C = A 相当于 C = C * A

/= 除且赋值运算符,把左边操作数除以右边操作数的结果赋值给左边操作数 C /= A 相当于 C = C / A

%= 求模且赋值运算符,求两个操作数的模赋值给左边操作数 C %= A 相当于 C = C % A

<<= 左移且赋值运算符 C <<= 2 等同于 C = C << 2

>>= 右移且赋值运算符 C >>= 2 等同于 C = C >> 2

&= 按位与且赋值运算符 C &= 2 等同于 C = C & 2

^= 按位异或且赋值运算符 C ^= 2 等同于 C = C ^ 2

|= 按位或且赋值运算符 C |= 2 等同于 C = C | 2

自增运算符为“++”,其功能是使变量的值自增1;自减运算符为“--”,其功能是使变量值自减1。自增自减运算符有以下几种形式:

#include<stdio.h>
int main()
{
  int a = 100;
  printf("%d\n",a++); /*a++意味着先将a的值也就是100给到printf,然后a自加1,于是a的值变成了101,这个101就成了下一行代码a的初始值了。*/
  printf("%d\n",++a); /*++a意思是先将a的值加1(这行代码的a的初始值来自上一行的结果,所以a是101,自加1后就变成了102),将102这个值给到printf,所以第二行的结果输出是102.*/
  printf("%d\n",--a); /*--a意思是先将a的值减1(这行代码a的初始值是102,减1后变成101),将101这个值给到输出。*/
  printf("%d\n",a--); /*a--意思是将a这个值(即101)给到输出,然后将101自减1,得100.*/
  printf("%d\n",a+1); //a的初始值100(来自上一行的结果),进行四则运算,+1得101.这里要注意!注意!进行四则运算并不改变a的值,也就是说下一行代码的a的初始值仍然是100,而非101.
  printf("%d\n",a);//这里不用解释
  return 0;
}

C语言中赋值运算符分为简单赋值运算符和复合赋值运算符,复合赋值运算符就是在简单赋值符“=”之前加上其它运算符构成,例如+=、-=、*=、/=、%=。

分析:定义整型变量a并赋值为3,a += 5;这个算式就等价于a = a+5; 将变量a和5相加之后再赋值给a

C语言中的关系运算符:

C语言中的逻辑运算符:

7<x<100写成计算机可以看的懂的算式就是:x>7 && x<100;
逻辑运算的值也是有两种分别为“真”和“假”,C语言中用整型的1和0来表示。其求值规则如下:

(1)与运算(&&)
参与运算的两个变量都为真时,结果才为真,否则为假。例如:5>=5 && 7>5 ,运算结果为真;

(2) 或运算(||)
参与运算的两个变量只要有一个为真,结果就为真。 两个量都为假时,结果为假。例如:5>=5||5>8,运算结果为真;

(3) 非运算(!)

参与运算的变量为真时,结果为假;参与运算量为假时,结果为真。例如:!(5>8),运算结果为真。
C语言中的三目运算符:“?:”,其格式为:
表达式1 ? 表达式2 : 表达式3;
执行过程是:先判断表达式1的值是否为真,如果是真的话执行表达式2;如果是假的话执行表达式3。

各种运算符号的顺序:

以上就是C语言基础----详解C中的运算符的详细内容,更多关于C 运算符的资料请关注小牛知识库其它相关文章!

 类似资料:
  • 本文向大家介绍C语言位运算和sizeof运算符详解,包括了C语言位运算和sizeof运算符详解的使用技巧和注意事项,需要的朋友参考一下 位运算和sizeof运算符       C语言中提供了一些运算符可以直接操作整数的位,称为位运算,因此位运算中的操作数都必须是整型的。位运算的效率是比较高的,而且位运算运用好的话会达到意想不到的效果。位运算主要有6种:与(&),或(|),取反(~),异或(^),左

  • 运算符是一种告诉编译器执行特定的数字或逻辑操作的符号。C# 中有丰富的内置运算符,分类如下: 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 其它运算符 本教程将逐一讲解算运算符、关系运算符、逻辑运算符、位运算符、赋值运算符和其他运算符。 算术运算符 下表列出了 C# 支持的所有算术运算符。假设变量 A 的值为10,变量 B 的值为20,则: 算术运算符实例 运算符 描述 实例 + 两个

  • 靠近表顶部的运算符,其优先级最高。具有较高优先级的运算符在相对较低的优先级的运算符之前被评估。在同一行上的运算符具有相同的优先级。当在相同的表达式中出现相同优先级的运算符时,必须首先对该规则进行评估。除了赋值运算符外,所有二进制运算符进行评估从左到右,赋值操作符是从右到左。 运算符优先级表: 运算符 优先级 后缀(postfix) expr++ expr-- 一元运算(unary) ++expr

  • 本文向大家介绍C 语言指针变量的运算详解,包括了C 语言指针变量的运算详解的使用技巧和注意事项,需要的朋友参考一下 指针变量保存的是地址,本质上是一个整数,可以进行部分运算,例如加法、减法、比较等,请看下面的代码: 运行结果: &a=0X28FF44, pa=0X28FF44, pb=0X28FF30, pc=0X28FF2B &a=0X28FF44, pa=0X28FF48, pb=0X28FF

  • Objective-C Runtime Runtime 是什么? Runtime 是 Objective-C 区别于 C 语言这样的静态语言的一个非常重要的特性。对于 C 语言,函数的调用会在编译期就已经决定好,在编译完成后直接顺序执行。但是 OC 是一门动态语言,函数调用变成了消息发送,在编译期不能知道要调用哪个函数。所以 Runtime 无非就是去解决如何在运行时期找到调用方法这样的问题。 对

  • Runloop 是和线程紧密相关的一个基础组件,是很多线程有关功能的幕后功臣。尽管在平常使用中几乎不太会直接用到,理解 Runloop 有利于我们更加深入地理解 iOS 的多线程模型。 Runloop 基本概念 Runloop 是什么?Runloop 还是比较顾名思义的一个东西,说白了就是一种循环,只不过它这种循环比较高级。一般的 while 循环会导致 CPU 进入忙等待状态,而 Runloop