第五天学习c语言

  1. 算数操作符:+、-、*(乘号)、/(除号,得到商,不得余数)、%(取模(余)操作符,得到余数,不得商

  1. 想要得到小数,需要用float数据类型的同时,保证被除数与除数任意一个携带有小数位,则可以计算出小数,如:float a =9/2=4.000000    float a =9.0/2(或2.0)=4.500000

  1. 若a=2,由于a是一个整型,一个整型是四个字节,一个字节等于八个比特位,所以a用二进制表示为

     00000000000000000000000000000010

4.二进制第一位是2的0次方,第二位是2的1次方,第三位是2的2次方......

5.移位操作符:>>(向右移位)、<<(向左移位)     //移动的是二进制位

例:

#include<stdio.h>

int main()

{

int a = 2;

int b = a<<1;                   //将a向左移动一位,意为将二进制表示的a向左移动,左边丢弃一个0                                          //并在右边末尾补上一个0,变为00000000000000000000000000000100

printf("%d\n",b);

return 0;

}

6.位操作符:&(按位)、|(按位)、^(按位异或

7.赋值操作符:

a = a + 2    //等号赋值符,表示a在原有赋值上,再赋予2

a+=2         //复合赋值,等同于a=a+2

a-=2         //复合赋值,等同于a=a-2

a%=2        //同理

a/=2

a*=2

a&=2

a^=2

a|=2

a>>=2

a<<=2

8.单目操作符

!逻辑反操作

例:

若int a = 2;

   printf("%d",!a);

则最终结果呈现为 0             //因为0在编译结果中,表示显示结果为假,即在!操作下,a不等于2了

若int a = 0;

    printf("%d",!a);

则最终结果呈现为1              //因为1在编译结果中,表示显示结果为真

-负值

+正值

&取地址

sizeof判断数据类型或变量或数组所占空间

~对一个数的二进制按位取反         //把所有二进制中的数字,1变为0,0变为1

--前置、后置--

同++

++前置、后置++

int a = 1

b=a++ =a+1=2    //后置++仅改变b,不改变a

int c = 2

d=++c  =c+1=3  //前置++不仅改变d,而且原有的c也发生变化,变为3

*间接访问操作符

放置一个类型),强制类型转换

例:

#include<stdio.h>

int main()

{

int a = 3.2

int b = (int)3.2

printf("%d\n%d\n",a,b)

return 0

}

结果会显示,a=3.14,b=3,这里a的数据类型被转化成double,而b被括号中的数据类型强制转化为了整型

8.如同a+b这种,+操作符需操作两个字符或数字时,叫做双目操作符;如同+a这种,需操作一个字符或数字时,叫做单目操作符

9.一个整数的二进制表示有3种:原码、反码、补码,整数在内存中存储的是补码

10.二进制中整数的最高位代表正负,0为正,1为负

11.  负整数的计算,如:-1的

原码为(整数有32位)10000000000000000000000000000001

反码为(除首位外,其余均与原码相反)1111111111111111111111111111110

补码为(反码的二进制加1)11111111111111111111111111111111

12.正整数,原码、反码、补码相同

13.关系操作符:>、>=(大于等于)、<、<=(小于等于)、!=(不相等)、==(相等)

14.逻辑操作符:&&(与)、||(或)

如:

问:这个工作谁能胜任。    答:我&&你(我和你都可以);我||你(我或者你,二者之一)

15.条件操作符:exp1、exp2、exp3......expN......    (相当于if与else)

例:exp1成立,则计算exp2,得到结果为exp2

      exp1不成立,则计算exp3,得到结果为exp3

#include<stdio.h>

int main()

{

int a = 0;

int b = 0;

int max = 0;

scanf("%d%d\n",&a,&b);

if(a>b)

max = a;

else

max = b;

//红字部分可以被替代为

max = a>b? a ; b ;     (意为是否a大于b,a>b成立,计算a>b后,得a;不成立,得b)

16.逗号表达式:逗号隔开的一串表达式,如:a,b,c,d,e

17.逗号表达式是从左到右依次计算,整个表达式的结果是最后一个表达式的结果

18.下标引用、函数调用操作符和结构组成操作符:[](下标引用操作符)、()(函数调用操作符)、. 、->

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

玉上铭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值