亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> C语言

C 编程运算符

C 编程运算符

在本教程中,您将通过示例了解 C 编程中的不同运算符。

视频:C 中的算术运算符

运算符是对值或变量进行操作的符号。例如:+ 是执行加法的算子。

C 有广泛的运算符来执行各种操作。


C 算术运算符

算术运算符对数值(常量和变量)进行加、减、乘、除等数学运算。

运算符 运算符的含义
+ 加法或一元加法
- 减法或一元减法
* 乘法
/ 部门
% 除法后的余数(模除法)

示例 1:算术运算符

// Working of arithmetic operators
#include <stdio.h>
int main()
{
    int a = 9,b = 4, c;
    
    c = a+b;
    printf("a+b = %d \n",c);
    c = a-b;
    printf("a-b = %d \n",c);
    c = a*b;
    printf("a*b = %d \n",c);
    c = a/b;
    printf("a/b = %d \n",c);
    c = a%b;
    printf("Remainder when a divided by b = %d \n",c);
    
    return 0;
}

输出

a+b = 13
a-b = 5
a*b = 36
a/b = 2
Remainder when a divided by b=1

运算符 + , -* 如您所料,分别计算加法、减法和乘法。

正常计算时,9/4 = 2.25 .但是,输出是 2 在程序中。

这是因为两个变量 a 和 b 是整数。因此,输出也是一个整数。编译器忽略小数点后的项并显示答案 2 而不是 2.25 .

模运算符 % 计算余数。当a=9 除以 b=4 ,余数为 1 . % 运算符只能与整数一起使用。

假设 a = 5.0 , b = 2.0 , c = 5d = 2 .那么在C编程中,

// Either one of the operands is a floating-point number
a/b = 2.5  
a/d = 2.5  
c/b = 2.5  

// Both operands are integers
c/d = 2

C 递增和递减运算符

C编程有两个运算符递增++ 并递减 -- 将操作数(常量或变量)的值更改 1。

递增 ++ 将值增加 1 而减少 -- 将值减 1。这两个运算符是一元运算符,这意味着它们只对单个操作数进行操作。

示例 2:递增和递减运算符

// Working of increment and decrement operators
#include <stdio.h>
int main()
{
    int a = 10, b = 100;
    float c = 10.5, d = 100.5;

    printf("++a = %d \n", ++a);
    printf("--b = %d \n", --b);
    printf("++c = %f \n", ++c);
    printf("--d = %f \n", --d);

    return 0;
}

输出

++a = 11
--b = 99
++c = 11.500000
--d = 99.500000

这里,运算符 ++-- 用作前缀。这两个运算符也可以用作后缀,如 a++a-- .访问此页面以详细了解增量和减量运算符在用作后缀时如何工作。


C 赋值运算符

赋值运算符用于为变量赋值。最常见的赋值运算符是 =

运算符 示例
= a =b a =b
+= a +=b a =a+b
-= a -=b a =a-b
*= a *=b a =a*b
/= a /=b a =a/b
%= a %=b a =a%b

示例 3:赋值运算符

// Working of assignment operators
#include <stdio.h>
int main()
{
    int a = 5, c;

    c = a;      // c is 5
    printf("c = %d\n", c);
    c += a;     // c is 10 
    printf("c = %d\n", c);
    c -= a;     // c is 5
    printf("c = %d\n", c);
    c *= a;     // c is 25
    printf("c = %d\n", c);
    c /= a;     // c is 5
    printf("c = %d\n", c);
    c %= a;     // c = 0
    printf("c = %d\n", c);

    return 0;
}

输出

c = 5 
c = 10 
c = 5 
c = 25 
c = 5 
c = 0

C 关系运算符

关系运算符检查两个操作数之间的关系。如果关系为真,则返回 1;如果关系为假,则返回值 0。

关系运算符用于决策和循环。

运算符 运算符的含义 示例
== 等于 5 == 3 被评估为 0
> 大于 5 > 3 被评估为 1
< 小于 5 < 3 被评估为 0
!= 不等于 5 != 3 被评估为 1
>= 大于等于 5 >= 3 被评估为 1
<= 小于或等于 5 <= 3 被评估为 0

示例 4:关系运算符

// Working of relational operators
#include <stdio.h>
int main()
{
    int a = 5, b = 5, c = 10;

    printf("%d == %d is %d \n", a, b, a == b);
    printf("%d == %d is %d \n", a, c, a == c);
    printf("%d > %d is %d \n", a, b, a > b);
    printf("%d > %d is %d \n", a, c, a > c);
    printf("%d < %d is %d \n", a, b, a < b);
    printf("%d < %d is %d \n", a, c, a < c);
    printf("%d != %d is %d \n", a, b, a != b);
    printf("%d != %d is %d \n", a, c, a != c);
    printf("%d >= %d is %d \n", a, b, a >= b);
    printf("%d >= %d is %d \n", a, c, a >= c);
    printf("%d <= %d is %d \n", a, b, a <= b);
    printf("%d <= %d is %d \n", a, c, a <= c);

    return 0;
}

输出

5 == 5 is 1
5 == 10 is 0
5 > 5 is 0
5 > 10 is 0
5 < 5 is 0
5 < 10 is 1
5 != 5 is 0
5 != 10 is 1
5 >= 5 is 1
5 >= 10 is 0
5 <= 5 is 1
5 <= 10 is 1 

C 逻辑运算符

包含逻辑运算符的表达式返回 0 或 1,具体取决于表达式的结果是真还是假。逻辑运算符常用于 C 编程中的决策。

运算符 意义 示例
&& 逻辑与。仅当所有操作数都为真时才为真 如果 c =5 并且 d =2 那么,表达式 ((c==5) && (d>5)) 等于 0。
|| 逻辑或。仅当任一操作数为真时才为真 如果 c =5 并且 d =2 那么,表达式 ((c==5) || (d>5)) 等于 1。
! 逻辑非。仅当操作数为 0 时为真 如果 c =5 那么,表达式 !(c==5) 等于 0。

示例 5:逻辑运算符

// Working of logical operators

#include <stdio.h>
int main()
{
    int a = 5, b = 5, c = 10, result;

    result = (a == b) && (c > b);
    printf("(a == b) && (c > b) is %d \n", result);

    result = (a == b) && (c < b);
    printf("(a == b) && (c < b) is %d \n", result);

    result = (a == b) || (c < b);
    printf("(a == b) || (c < b) is %d \n", result);

    result = (a != b) || (c < b);
    printf("(a != b) || (c < b) is %d \n", result);

    result = !(a != b);
    printf("!(a != b) is %d \n", result);

    result = !(a == b);
    printf("!(a == b) is %d \n", result);

    return 0;
}

输出

(a == b) && (c > b) is 1 
(a == b) && (c < b) is 0 
(a == b) || (c < b) is 1 
(a != b) || (c < b) is 0 
!(a != b) is 1 
!(a == b) is 0 

逻辑运算符程序说明


C 位运算符

在计算过程中,加法、减法、乘法、除法等数学运算被转换为位级,从而使处理更快,更省电。

C 编程中使用位运算符来执行位级操作。

运算符 运算符的含义
& 按位与
| 按位或
^ 按位异或
~ 按位补码
<< 左移
>> 右移

访问 C 中的位运算符以了解更多信息。

其他运算符


逗号运算符

逗号运算符用于将相关表达式链接在一起。例如:

int a, c = 5, d;

sizeof 运算符

sizeof 是一元运算符,返回数据的大小(常量、变量、数组、结构体等)。

示例 6:sizeof 运算符

#include <stdio.h>
int main()
{
    int a;
    float b;
    double c;
    char d;
    printf("Size of int=%lu bytes\n",sizeof(a));
    printf("Size of float=%lu bytes\n",sizeof(b));
    printf("Size of double=%lu bytes\n",sizeof(c));
    printf("Size of char=%lu byte\n",sizeof(d));

    return 0;
}

输出

Size of int = 4 bytes
Size of float = 4 bytes
Size of double = 8 bytes
Size of char = 1 byte

三元运算符?:等其他运算符 , 引用运算符 & , 解引用运算符 * 和成员选择运算符 -> 后面的教程会讲到。


C语言

  1. 微处理器编程
  2. C# 运算符
  3. C# 位和位移运算符
  4. C# 编程中的命名空间
  5. C++ 运算符
  6. 在 C++ 编程中将数组传递给函数
  7. C 编程中用户定义函数的类型
  8. Python 运算符
  9. Java 运算符
  10. C 教程
  11. Verilog 运算符
  12. Java - 基本运算符