惧留孙网

juliusun.com

在线教程 > C语言教程 > 几个常用运算符

几个常用运算符

第 11/50 节 冥河C语言教程


C语言中唯一一个三元运算符,? :,注意,这个运算符是三元运算符,由问号?和冒号两个符号组成,两个符号将空间分成三部分,分别放三个数据,用法为:

条件 ? 条件成立的返回值Y : 条件不成立的返回值N

当条件成立时,表达式返回值Y,条件不成立时,返回值N。举例如下:


  1. #include<stdio.h>
  2. int main( )
  3. {
  4. int a,b,c;
  5. scanf("%d %d",&a,&b); //输入两个数
  6. c = a>b ? a : b; //a>b时将a赋值给c,a<=b时将b赋值给c
  7. printf("您输入的数字中较大的数字是%d",c);
  8. getchar( ) ;getchar( ) ; //使程序暂停一下
  9. return 0;
  10. }

一般,? :运算符效率高于if判断。

再介绍一下运算符+=、-=、*=、/=、%=,意义分别是加后赋值、减后赋值、乘后赋值、除后赋值、取模后赋值,都是二元运算符,把左边的值称为左值,右边的值称为右值。它们作用分别是,左值与右值进行加、减、乘、除、取模运行后,结果再赋值给左值。如 i += 3意义为把i和3相加后的值再赋值给i,相当于i = i + 3。同样i -= 3相当于i = i - 3。总结正如下:


 运算符描述举例例子描述
+=左值与右值相加后结果赋值给左值i += 3将i+3的结果赋值给i,作用类似i = i + 3
-=左值与右值相减后结果赋值给左值i -= 3将i-3的结果赋值给i,作用类似i = i - 3
*=左值与右值相乘后结果赋值给左值i *= 3将i * 3的结果赋值给i,作用类似i = i * 3
/=左值与右值相除后结果赋值给左值i /= 3将i / 3的结果赋值给i,作用类似i = i / 3
%=左值与右值取模后结果赋值给左值i %= 3将i % 3的结果赋值给i,作用类似i = i % 3

通常,上述几个运算符运算效率较高。

还有四个运算符,分别是前置++运算符,前置--运算符,使用时放在操作数的前面,如++i、--i,后置++运算符、后置--运算符,使用时放在操作数后面,如i++、i--。注意:这四个运算符会改变变量本身的值。表中假设i开始时值为0,说明如下:


 运算符描述举例例子描述
前置++操作数自身先加1,再参与表达式运算j = ++i变量i自身加1,再将i赋值给j,执行后j为1,i为1
前置--操作数自身先减1,再参与表达式运算j = -- i变量i自身减1,再将i赋值给j,执行后j为-1,i为-1
后置++操作数参与表达式运算,再自身加1j = i++将i的值赋值给j,i再自身加1,执行后j为0,i为1
后置--操作数参与表达式运算,再自身减1j = i--将i的值赋值给j,i再自身减1,执行后j为0,i为-1

通常前置的++和--运算符效率高于后置的++和--运算符。

作者:冥河 QQ:3304576112
交流QQ群:554701039 C语言讲课群
本教程内容由本站保留版权,请勿复制传播
抖音
©2015-2024 惧留孙网 juliusun.com

京ICP备15039193号-1

首页 教程 下载 文章 聊天 我的