C语言基础知识(4)--运算符

描述

      1.概述

       C语言中,运算符包括有算术运算符、关系运算符、逻辑运算符和位运算。

        算术运算符:+、-、*、/、%、++(自增1)、--(自减1)

        关系运算符:>、>=、<、<=、==、!=

        逻辑运输符:&&(并且)、||(或者)、!(取非)

        位运算:&(按位与)、|(按位或)、~(按位取反)、<<(左移一位)、>>(右移一位)

  • 优先级关系如下:

      第1优先级:()、[]等、成员访问-> .
      第2优先级:单目运算符,如++、--、!、~等
      第3优先级:乘法*、除法/、取模%
      第4优先级:加法+、减法-
      第5优先级:移位<<、>>
      第6优先级:大于>、大于等于>=、小于<、小于等于<=
      第7优先级:等于==、不等于!=
      第8优先级:按位与&
      第9优先级:按位异或^
      第10优先级:按位或|
      第11优先级:逻辑与&&
      第12优先级:逻辑或||
      第13优先级:三目条件运算符 ?:
      第14优先级:赋值运算符,如=、+=、-=、*=、/= 等
      第15优先级:逗号运算, 

运算符

说明

结合性

()  []  ->  .  括号、数组、结构体成员访问 从左往右

!  ~  +  -  ++  -- 

(type)  * &  sizeof

逻辑非、取反、负号、正号、自增、自减

强制转换、间接、取地址、获取空间占用

从右往左
*  /  % 乘、除、取模 从左往右
+  - 加、减 从左往右
>>  << 右移、左移 从左往右
<  <=  >  >= 小于、小于等于、大于、大于等于 从左往右
==  != 相等、不相等 从左往右
& 按位与 从左往右
^ 按位异或 从左到右
| 按位或 从左到右
&& 逻辑与 从左到右
|| 逻辑或 从左到右
?: 条件 从右到左

=  +=  -=  *=   /=   <<=  >>= 

&=  |=  ^= 

等于、加等于、减等于、乘等于

除以等于、左移等于、右移等于

与等于、或等于、异或等于

从右到左
, 逗号运算 从左到右

2.自增自减++、--

      ++(或者--)放后面,先用值,再+(或者-)1  示例:data++
      ++(或者--)放前面,先+(或者-)1,再用值  示例:++data

#include < stdio.h >
int main()
{
	int data=10;
	printf("data=%dn",data++);//10
	data=10;
	printf("data=%dn",++data);//11
	data=10;
	printf("data=%dn",data--);//10
	data=10;
	printf("data=%dn",--data);//9
}
[wbyq@wbyq 1227]$ ./a.out 
data=10
data=11
data=10
data=9

3.C练习

      1.输入一个年份,判断是闰年还是平年。
      2.输入一个三位数,判断是否为水仙花数(各个位上的立方之和等于本身)
            示例:153=1^3+5^3+3^3
     3.输入一个华氏温度,转换为摄氏温度。转换方式:(华氏温度-32)÷1.8;
     4.从键盘上输入3个整数,按从大到小的顺序输出。例如输入32 15 20,输出32 20 15;
     5.从键盘上输入一个三位数,判断是否为回文数。例:121;

  审核编辑:汤梓红

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分