运算符与表达式

目录

         一.运算符与表达式之位

二.运算符和表达式的自增自减

三.运算符与表达式之 赋值

         四.运算符与表达式之逗号

         五.运算符与表达式之条件​​​​​​​

         六.运算符与表达式之求字节数

      

一.运算符与表达式之位

位运算

      定义:对整形数据进行运算,且符号位需参与运算

运算符含义举例结果
&按位与3&51
|按位或3|57
^按位异或3^56
~按位取反~3-4
<<左移3<<16
>>右移3>>11
#include<stdio.h>
void main ()
{
  printf("%d\n",3&5);
  printf("%d\n",3|5);
  printf("%d\n",3^5);
  printf("%d\n",~3);
  printf("%d\n",3<<1);
  printf("%d\n",3>>1);
}

 分析位运算结果是,先将运算的整数转化为二进制进行按位运算

按位异或的运算规则;相异为真,相同为假

二.运算符和表达式的自增自减

自增自减(一元运算符)

只能对变量进行运算

++i   --i   在使用i之前,先使i的值加/减1,先增减,后运算

i++   i--   在使用i之前,使i的值加/减1,先运算,后增减

int  i=3
printf("%d",++i)


int  i=3
printf("%d",i++)

结合性;自右向左

++与-是同优先级

三.运算符与表达式之 赋值

赋值     

    符号“=”

  【变量】=【表达式】

结合性:自右向左

#include“stdio.h"
int  main ()
{   int  j;
    j=2.5
    printf("j=%d",j)
}

 复合赋值运算符

双目运算符+赋值运算符

格式:表达式1 op=表达式2     a+=b-1

等价于:表达式1 =表达式1 op (表达式2)   a=a+(b-1)

*=/=%=+=-=
<<=>>=&=|=^=
#include "stdio.h"
int  main ()
{  int  a=12;
   a+=a-=a*12;
   printf("a=%d",a);
}

四.运算符与表达式之逗号

 逗号

作用:将几个表达式隔开以此计算

优先级:最低

结合性:自左向右

整个表达式的值:最后一个表达式的值

求解过程:自左向右,以此计算,最后一个表达式的值为整个表达式的值

#include ”stdio.h"
int main()
{  int num ;
   num=(2+2,2*3,5);
   prinntf("num=%d",num);
}

五.运算符与表达式之条件

 条件

运算符

作用:判断一个逻辑表达式的结果,如果为真则指定执行某给表达式,如果为假则指定执行另外的表达式

实质:起程序控制作用 

求值规则:先求表达式1---(真)----->求表达式2

                                     ---(假)----->求表达式3 

结合性:自右至左

include "stdio.h>
int  main ()
{
   int  y,x=15
   y=x>10?x/10:x>0?x:-x;
   printf("y=%d",y)
}

六.运算符与表达式之求字节数

字节数

运算符sizeof()单目运算符,计算某一类型的运算量所占用的字节数

种类:1  sizeof(类型标识)2.sizeof(变量名);sizeof变量名

#include  "stdio.h"
 int  main()
{   int  a;
   double  x;
   printf("%d,%d\n",sizeof(a),sizeof  x);
   printf("%d,%d",sizeof(int),sizeof(double));
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值