一、C语言的运算符

C语言有六种运算符,如下:

1)算术运算符;

2)赋值运算符;

3)sizeof运算符;

4)关系运算符;

5)逻辑运算符;

6)位运算符。

本章将只介绍算术运算符、赋值运算符和sizeof运算符,关系运算符和逻辑运算符放在其它章节中介绍,位运算符极少使用,了解即可,不深入学习。

二、算术运算符

下表显示了 C 语言支持的所有算术运算符。假设变量 A 的值为 18,变量 B 的值为 5,则:运算符描述实例

+两个数相加A+B将得到 23

-一个数减另一个数A-B将得到 13

*两个数相乘A*B将得到 90

/分子除以分母A/B将得到 3.6

%余数运算符,整除后的余数B%A将得到 3

++自增运算符,整数值增加 1A++将得到 19

--自减运算符,整数值减少 1A--将得到 17

示例(book15.c)/*

*  程序名:book15.c,此程序演示算术运算符的使用。

*  作者:C语言技术网(www.freecplus.net) 日期:20190525

*/

#include

int main()

{

double    A=18;      // 定义变量A,赋值18

double    B=5;       // 定义变量B,赋值5

printf("A的值是:%lf\n",A);

printf("B的值是:%lf\n",B);

printf("A+B的值是:%lf\n",A+B);

printf("A-B的值是:%lf\n",A-B);

printf("A*B的值是:%lf\n",A*B);

printf("A/B的值是:%lf\n",A/B);

//printf("A除B的余数是:%lf\n",A%B);

A++;  // 自增1

printf("A自增后的值是:%lf\n",A);

B--;  // 自减1

printf("B自减后的值是:%lf\n",B);

return 0;

}

运行效果

变量的自增或自减有两种写法:

变量名++;    // 表示在本次使用变量后再自增;

++变量名;     // 表示在本次使用变量前自增;

变量名--;    // 表示在本次使用变量后再自减;

--变量名;     // 表示在本次使用变量前自减;

示例(book16.c)/*

*  程序名:book16.c,此程序演示算术运算符++和--的使用。

*  作者:C语言技术网(www.freecplus.net) 日期:20190525

*/

#include

int main()

{

int    ii=0;      // 定义变量ii并初始化

ii=10;

printf("ii++的值是:%d\n",ii++);  // 在使用后自增

printf("ii的值是:%d\n",ii);

ii=10;

printf("++ii的值是:%d\n",++ii);  // 在使用前自增

printf("ii的值是:%d\n",ii);

return 0;

}

运行效果

三、赋值运算符

下表列出了 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语言的基本数据类型,包括char、int和double,字符串(字符数组)不能使用赋值运算符。

示例(book17.c)/*

*  程序名:book17.c,此程序演示赋值运算符的使用。

*  作者:C语言技术网(www.freecplus.net) 日期:20190525

*/

#include

int main()

{

int    C=0;     // 定义变量C并初始化

int    A=21;    // 定义变量A并初始化

C=A;

printf("运算符  = 演示,C的值 = %d\n",C);

C+=A;  // C=C+A;

printf("运算符 += 演示,C的值 = %d\n",C);

C-=A;  // C=C-A;

printf("运算符 -= 演示,C的值 = %d\n",C);

C*=A;  // C=C*A;

printf("运算符 *= 演示,C的值 = %d\n",C);

C/=A;  // C=C/A;

printf("运算符 /= 演示,C的值 = %d\n",C);

C=200;

C%=A;  // C=C%A;

printf("运算符 %= 演示,C的值 = %d\n",C);

return 0;

}

运行效果

四、sizeof运算符

sizeof是C语言的关键字,它用来计算变量(或数据类型)在当前系统中占用内存的字节数。

sizeof不是函数,产生这样的疑问是因为sizeof的书写确实有点像函数,sizeof有两种写法:

用于数据类型sizeof(数据类型);

数据类型必须用括号括住。printf("字符型变量占用的内存是=%d\n",sizeof(char));   // 输出:字符型变量占用的内存是=1

printf("整型变量占用的内存是=%d\n",sizeof(int));   // 输出:整型变量占用的内存是=4

用于变量sizeof(变量名);

sizeof 变量名;

变量名可以不用括号括住,带括号的用法更普遍,大多数程序员采用这种形式。int ii;

printf("ii占用的内存是=%d\n",sizeof(ii));   // 输出:ii占用的内存是=4

printf("ii占用的内存是=%d\n",sizeof ii);   // 输出:ii占用的内存是=4

五、运算符的优先级

在+-*/四则运算符中,*/的优先级高于+-,在C语言中,其它的运算符都有优先级,我不想介绍它们的优先级,我写了二十年的程序,也记不住各种运算符的优先级的关系。

我不建议程序员记住各种运算符的优先级,而是用括号解决全部的问题,括号的优先级是最高的,括号中的表达式会优先执行,这样各个运算符的执行顺序就一目了然了。int d = a + (b * c);

六、版权声明

C语言技术网原创文章,转载请说明文章的来源、作者和原文的链接。

作者:码农有道

c语言运算符 4,C语言运算符相关推荐

  1. c++运算符优先级_C语言入门教程-(6)运算符

    1.运算符概述 运算符是一种编译器执行特定的数学或逻辑操作的符号.C语言提供了以下类型的运算符: 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 条件运算符 其他运算符 2.算术运算符 算术 ...

  2. c语言表达式用法,C语言开发之运算符、表达式用法

    C语言中运算符和表达式数量之多,在高级语言中是少见的.正是丰富的运算符和表达式使C语言功能十分完善.这也是C语言的主要特点之一.C语言的运算符不仅具有不同的优先级,而且还有一个特点,就是它的结合性.在 ...

  3. c语言如何使四种运算符同级,二 如何学习C语言的运算符和运算顺序

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 C语言的运算功能十分丰富,运算种类远多于其它程序设计语言.因此,当多种不同运算组成一个运算表达式,即一个运算式中出现多种运算符时,运算的优先顺序和结合规则 ...

  4. c语言位运算符读音,C语言六种位运算符

    位运算符C语言提供了六种位运算符: & 按位与 | 按位或 ^ 按位异或 ~ 取反 << 左移 >> 右移 1. 按位与运算 按位与运算符"&&quo ...

  5. new是不是c语言运算符优先级表,C语言运算符优先级列表(超详细)

    <C语言运算符优先级列表(超详细)>由会员分享,可在线阅读,更多相关<C语言运算符优先级列表(超详细)(7页珍藏版)>请在人人文库网上搜索. 1.本篇文章是对C语言中运算符的优 ...

  6. -%3e运算符在c语言中的作用,C语言逻辑运算符知识整理

    在高中数学中,我们学过逻辑运算,例如p为真命题,q就假命题,那么"p且q"为假,"p或q"为真,"非q"为真. 在C语言中,也有类似的逻辑运 ...

  7. sizeof是c语言的一种运算符,C语言位运算和sizeof运算符详解

    位运算和sizeof运算符 C语言中提供了一些运算符可以直接操作整数的位,称为位运算,因此位运算中的操作数都必须是整型的.位运算的效率是比较高的,而且位运算运用好的话会达到意想不到的效果.位运算主要有 ...

  8. 华农c语言计算高精度加法_考研计算机 | 运算符与表达式算术运算符

    一.算术运算符与算术表达式 (一)基本的算术运算符+加法运算符,或正值运算符3+5.+3–减法运算符,或负值运算符5-2.-3* 乘法运算符3*5/除法运算符5/3%模运算符,或称求余运算符,%两侧均 ...

  9. c语言字符运算 =,C语言运算符

    原标题:C语言运算符 一.前言 在嵌入式开发中,我们一般选用C语言作为开发语言.一个主要的原因在于C语言提供了大量的运算符,比如我们对硬件的操作一般涉及到对位的操作,而C语言就提供了这样的运算符,这是 ...

  10. c语言的运算符表格,C语言教案(运算符和表格达式).ppt

    C语言教案(运算符和表格达式) 运算符与表达式 第二讲 运算符和表达式 引例 概念及分类 优先级和结合性 算术运算 关系运算 逻辑运算 位运算 赋值运算符 逗号运算符 条件运算符 引例 引例 问题 输 ...

最新文章

  1. java 中向文本写入和读取hashmap_就靠这一篇HashMap的讲解,我与头条面试官聊了一个小时。...
  2. 【Python】Spyder编译器“updating indices”问题导致程序无法运行或调试
  3. python 多进程multiprocessing进程池pool tensorflow-yolov3 报错TypeError: 'ApplyResult' object is not iterable
  4. 【NLP】AAAI21最佳论文Runners Up!Transformer的归因探索!
  5. windows。forms.timer设置第一次不等待_防火卷帘设置的场景不同下降的要求有哪些区别?...
  6. React开发(144):Git Commit 规范
  7. 关于IDEA代码的整理以及函数
  8. 学python必会英语单词_Python必备常用英语词汇(一)
  9. apple apns http2 java调用
  10. 如何把大咖的知识,内容、思维,瞬间变成你的知识内容思维的秘诀
  11. angularjs教程_AngularJS活动教程
  12. 关于scala中lazy val的几个注意事项
  13. 2010年年度 “中国智能建筑品牌奖”获奖名单
  14. 主要国家和地区货币代码表
  15. php redis 菜鸟,安装redis和phpredis模块
  16. 微信服务器小程序后台,微信小程序调用后台service教程详解
  17. PCBA加工组装需要的设备有哪些呢?
  18. 再谈OT算法的协同文档制作的底层基础架构记录
  19. 优雅的进行线上数据订正
  20. jk触发器上升沿怎么看_jk触发器波形图_jk触发器波形图怎么画

热门文章

  1. 新松机器人:【示教编程】+【PC离线编程】+【PLC远程IO】相结合
  2. 实验十二、十三 配置PPP协议、配置Frame-relay协议
  3. JavaScript最新面试题
  4. Composite Coloring(思维 数论(筛素数 分解质因数))
  5. 小心肝队-冲刺日志(第二天)
  6. 特运tong app sign签名破解
  7. 【烈日炎炎战后端】JAVA基础(3.4万字)
  8. 从零开始做自媒体短视频,新手一样可以操作!每月稳定5000多
  9. 机器学习模型设计准则:“无免费午餐”定理和“奥卡姆剃刀”原则
  10. 付费的「小密圈」值不值得我们加入呢?