前言
C语言是一种广泛使用的编程语言,拥有丰富的操作符(operator)来进行不同类型的操作。下面我将详细介绍常用的C语言操作符及其功能:
算术操作符(Arithmetic Operators)
- ‘+’:加法操作符,用于两个数值相加。
- ‘-’:减法操作符,用于两个数值相减。
- ‘*’:乘法操作符,用于两个数值相乘。
- ‘/’:除法操作符,用于两个数值相除。
- ‘%’:取模操作符,返回除法运算的余数。
代码示例
#include <stdio.h> int main() { int a = 6; int b = 3; int sum = a + b; int difference = a - b; int product = a * b; int quotient = a / b; int remainder = a % b; printf("Sum: %d\n", sum); printf("Difference: %d\n", difference); printf("Product: %d\n", product); printf("Quotient: %d\n", quotient); printf("Remainder: %d\n", remainder); return 0; }
代码解析
#include <stdio.h>
这行代码是一个预处理指令,用于包含 C 标准库中的标准输入输出函数的声明。
int main() {
这行代码定义了程序的主函数 main()
,它是程序执行的入口点。
int a = 6; int b = 3;
这两行代码定义了两个整数变量 a
和 b
,并将它们的值分别初始化为 6 和 3。
int sum = a + b; int difference = a - b; int product = a * b; int quotient = a / b; int remainder = a % b;
这几行代码使用算术运算符对变量 a
和 b
进行计算,并将结果赋值给对应的变量。sum
存储了 a
和 b
的和,difference
存储了 a
和 b
的差,product
存储了 a
和 b
的乘积,quotient
存储了 a
除以 b
的商,remainder
存储了 a
除以 b
的余数。
printf("Sum: %d\n", sum); printf("Difference: %d\n", difference); printf("Product: %d\n", product); printf("Quotient: %d\n", quotient); printf("Remainder: %d\n", remainder);
这几行代码使用 printf()
函数将计算结果打印输出。%d
是格式字符,用于指示打印整数类型的值。\n
是转义字符,表示换行。
return 0; }
最后,这行代码表示程序正常结束,并将零作为返回值传递给操作系统。
关系操作符(Relational Operators)
- ‘==’:等于操作符,检查两个操作数是否相等。
- ‘!=’:不等于操作符,检查两个操作数是否不相等。
- ‘>’:大于操作符,检查左操作数是否大于右操作数。
- ‘<’:小于操作符,检查左操作数是否小于右操作数。
- ‘>=’:大于等于操作符,检查左操作数是否大于或等于右操作数。
- ‘<=’:小于等于操作符,检查左操作数是否小于或等于右操作数。
代码示例
#include <stdio.h> int main() { int a = 5; int b = 3; if (a == b) { printf("a is equal to b\n"); } else if (a != b) { printf("a is not equal to b\n"); } if (a > b) { printf("a is greater than b\n"); } if (a < b) { printf("a is less than b\n"); } if (a >= b) { printf("a is greater than or equal to b\n"); } if (a <= b) { printf("a is less than or equal to b\n"); } return 0; }
代码解析
#include <stdio.h>
这行代码是一个预处理指令,用于包含 C 标准库中的标准输入输出函数的声明。
int main() {
这行代码定义了程序的主函数 main()
,它是程序执行的入口点。
int a = 5; int b = 3;
这两行代码定义了两个整数变量 a
和 b
,并将它们的值分别初始化为 5 和 3。
if (a == b) { printf("a is equal to b\n"); } else if (a != b) { printf("a is not equal to b\n"); }
这部分代码使用条件语句 if-else
进行比较。首先,判断 a
是否等于 b
,如果相等,则执行 if
代码块中的语句,并打印 “a is equal to b”。如果不相等,则执行 else
代码块中的语句,并打印 “a is not equal to b”。
if (a > b) { printf("a is greater than b\n"); }
这部分代码使用条件语句 if
判断 a
是否大于 b
,如果成立,则执行代码块中的语句,并打印 “a is greater than b”。
if (a < b) { printf("a is less than b\n"); }
这部分代码使用条件语句 if
判断 a
是否小于 b
,如果成立,则执行代码块中的语句,并打印 “a is less than b”。
if (a >= b) { printf("a is greater than or equal to b\n"); }
这部分代码使用条件语句 if
判断 a
是否大于等于 b
,如果成立,则执行代码块中的语句,并打印 “a is greater than or equal to b”。
if (a <= b) { printf("a is less than or equal to b\n"); }
这部分代码使用条件语句 if
判断 a
是否小于等于 b
,如果成立,则执行代码块中的语句,并打印 “a is less than or equal to b”。
return 0; }
最后,这行代码表示程序正常结束,并将零作为返回值传递给操作系统。
逻辑操作符(Logical Operators)
- ‘&&’:与操作符,用于两个条件都为真时返回真。
- ‘||’:或操作符,用于两个条件之一为真时返回真。
- ‘!’:非操作符,用于取反当前条件的值。
代码示例
#include <stdio.h> int main() { int x = 5; int y = 3; if (x > 0 && y > 0) { printf("Both x and y are positive\n"); } if (x > 0 || y > 0) { printf("Either x or y is positive\n"); } if (!(x > 0)) { printf("x is not positive\n"); } return 0; }
代码解析
#include <stdio.h>
这行代码是一个预处理指令,用于包含 C 标准库中的标准输入输出函数的声明。
int main() {
这行代码定义了程序的主函数 main()
,它是程序执行的入口点。
int x = 5; int y = 3;
这两行代码定义了两个整数变量 x
和 y
,并将它们的值分别初始化为 5 和 3。
if (x > 0 && y > 0) { printf("Both x and y are positive\n"); }
这部分代码使用条件语句 if
判断 x
是否大于 0 并且 y
是否大于 0。如果两个条件均满足,则执行代码块中的语句,并打印 “Both x and y are positive”。
if (x > 0 || y > 0) { printf("Either x or y is positive\n"); }
这部分代码使用条件语句 if
判断 x
是否大于 0 或者 y
是否大于 0。如果其中一个条件成立,则执行代码块中的语句,并打印 “Either x or y is positive”。
if (!(x > 0)) { printf("x is not positive\n"); }
这部分代码使用条件语句 if
判断 x
是否不大于 0。如果条件不成立,则执行代码块中的语句,并打印 “x is not positive”。这里的 !
是逻辑运算符取反的意思。
return 0; }
最后,这行代码表示程序正常结束,并将零作为返回值传递给操作系统。