3.运算符与表达式

3.1 常用运算符分类

3.2 算术运算符

+-*
/(除法)的运用
输入:int a = 5;
           int b = 2;
          double c;
           c = a/b;
          printf("c1 = %lf\n, c")
输出: c = 2.000000  //此处的结果为整数
//两个数相除,要想要得到小数分子分母必须有一个是小数,否则结果只会取整

输入:c = 1.0/2;
printf("c3 = %lf\n", c ");
输出: c3  =0.500000
输入:1c =1/2.0;
printf("c3 =%lf\n",c);
输出;0.500000
输出:c = a*1.0/b;
printf("c4= %lf\n"c);
输出:2.500000

%:取余数
如:10 % 3 
结果: 1

全部输入:int a =1;
        int b =0;


前自增:++
//前置++,先加后用
//1.先把a的值加1
//2.再把a加完1的值赋值给b

输入:b = ++a;
printf("a1 = %d, b1 = %d\n", a, b);
输出:a=2 b=2


后自增:++
//后置++,先用后加
//1.先把a的值赋值给b
//2.a再自加1

输入:b  = a++;
printf(”a2 = %d, b2 = %d\n“, a b);
输出:a = 2 b= 1

特别:
a =1;
b =0;
a++;  //先执行完此语句,在往下执行
b = a;  //执行到此语句,a的值已经是2
printf("a3 = %d, b3 = %d\n",a b);

3.3 赋值运算符
3.4 比较运算符

+=:
输入:a =2;
a += 2;   //a =a+2
输出:a = 4

3.5 逻辑运算符
逻辑真假
非0就是真,通常以1表示
0就是假,以0表示

//因为4==3条件为假,所以结果为0
输入:printf("4 == 3 结果为: %d\n", 4 == 3);
输出:0
//因为4>3条件为真,所以结果为1
输入:printf("4 > 3结果为:%d\n",4 > 3);
输出;1


// !,将真变假,假变真
输入:printf("!(4 == 3)结果为:号d\n"!(4 = 3));
输出:1
//&&,左右结果都为真,整体结果就为真
输入:printf("1 && -1 结果为: %d\n",1 && -1 );
输出:1
//如是有一个不是真,则结果为假
输入:printf("1 && 0结果为:%d\n”, 1 && 0);
输出:0
// ||,只要有一边是真,结果就为真
输入:printf("1 || 0结果为:%d\n”,1 || 0);
输出:1
输入:printf("0 ||0结果为:%d\n”,0 || 0);
输出:0


3.6 运算符优先级

3 <  a < 10;  //er
3 < a &&  a < 10 ;
短路规则(优化)
||,左边为真,右边不执行
&&.左边为假,右边不执行

输入:int = 0;
          printf(“before  c = %d\n", c);
// ||,左边为真,石边不执行
 
输入:1 || c =(250)
          printf(“after  c = %d\n", c);
输出:before c = 0
after c= 0
//1、||优先级高于 =
//2、先算 1 |l c  结果为真,1
//3、1= 250常量不能修改
//1 || c=250;  //err

         0 || (c = 250);   //左边为假,右边就执行
          printf("after c = %d\n", c);
输出:before c = 0
after c= 250


3.7 类型转换

3.7.1隐式转接

3.7.2 强制转换

//强制类型转换:   (类型)  需要转换的变量名
输入:
double a;
//把1强制转换为浮点型后再运算
a = (double)1/2;
printf("a =%lf\n",a);
输出:0.500000

//关于浮点型打印说明
输入:int main()
           int a=11;
//整型变量不要用%lf打印,除非强制类型转换
printf("a=%lf\n",(double)a);


double b=88.14;
//浮点型变量不要用%d打印,除非强制类型转换
printf("b =%d\n"(int)b);

//制类型转换原则:数据类型小的往大的转换

输入:    int a= 129;
              char b=111;   //数据类型,char小于int
//小的往大的转换
a=(int)b;
printf("a=%d\n"a);
输出:a = 111
//大的往小的转换
b =(char)a;
printf("b =%d\n",b);
输出:b = -127

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值