Dotcpp  >  编程教程  >  C语言运算符和表达式  >  C语言算数运算符实例讲解

C语言算数运算符实例讲解

点击打开在线编译器,边学边练

C语言中算数运算符主要包括:加法+、减法-、乘法*、除法/、求模%、自增++、自减--。


自增++和自减--,是单目运算符,因为它们只需要一个操作数,加法+、减法-、乘法*、除法/、求模%,是双目运算符


自增++自减--又称为“增量运算符”(increment operator)完成简单的任务,如++,即将其操作数的值增加1。这个运算符以两种方式出现。在第一种方式中,++出现在它作用的变量的前面,这是前缀(prefix)模式;在第二种方式中,++出现在它作用的变量的后面,这是后缀(postfix)模式。这两种模式的区别在于值的增加这一动作发生的准确时间不同。对于前缀运算符,先执行自增或自减运算,再计算表达式的值;而后缀运算符,则先计算表达式的值,再执行自增或自减运算。自减--也是同样的道理。


我们举个例子来说明:

#include<stdio.h>
int main()
{
    int a,b;
    a=b=5;
    printf("%d      %d\n",a--,--b);
    printf("%d      %d\n",a--,--b);
    printf("%d      %d\n",a--,--b);
    printf("%d      %d\n",a--,--b);
    printf("%d      %d\n",a--,--b);
    return 0;
}


运行结果如下:

5      4
4      3
3      2
2      1
1      0


这个程序5次将变量a和b减1,您可以通过这个结果来理解前缀和后缀的区别。
需要提醒一下的是,++与--是单目运算符,即一个操作对象,而这个操作对象只能为变量,因为,常量不可以被赋值。


运算符符号操作用例结果
加法+使它两侧的值加到一起1+23
减法-从它前面的数减去后面的数5-32
乘法*将它前面的数乘以后面的数2*36
除法/用它左边的值除以右边的值8/32(整数的除法会丢掉小数部分)
取模%求用它左边的值除以右边的数后的余数5%32(%运算符两侧的操作数必须为整数)


看一个例子:

#include<stdio.h>
int main()
{
    int a=20;
    int b=5;
    int c=6;
    printf("a = %d b = %d c = %d\n",a,b,c);
    printf("a + b = %d\n",a+b);
    printf("a - c = %d\n",a-c);
    printf("a * b = %d\n",a*b);
    printf("a / c = %d\n",a/c);
    printf("a %% c = %d\n",a%c);/*两个%才会输出一个%*/
    return 0;
}


运行结果为:

a = 20 b = 5 c = 6
a + b = 25
a - c = 14
a * b = 100
a / c = 3
a % c = 2


大家可以亲自实验。



本文固定URL:https://www.dotcpp.com/course/17

C语言教程
第一章 C语言的过去与未来
第二章 C语言快速入门
第三章 C语言的数据类型
第四章 C语言中的基本输入输出
第五章 C语言运算符和表达式
第六章 C语句和程序流
第七章 C语言函数
第八章 C语言数组
第九章 C语言指针
第十章 C语言结构体和共用体
第十一章 C语言文件操作
第十二章 C语言预处理
第十三章 C语言位运算
第十四章 附录
Dotcpp在线编译      (登录可减少运行等待时间)