C语言 算数运算符

介绍

算术运算符是对数值类型的变量进行运算的,在 C 程序中使用的非常多

算术运算符一览

在这里插入图片描述

案例演示

1) 案例演示算术运算符的使用(operator.c)。 +, - , * , / , %, ++, – , 重点讲解 /、%、++

2) 自增:++ 作为独立的语句使用: 前++和后++都完全等价于 i=i+1; 作为表达式使用 前++:++i 先自增后赋值 后++:i++先赋值后自增
3) – ,+、-、* 是一个道理,完全可以类推。
4)代码展示1

#include<stdio.h>

void main(){
	
 //处理的流程 10 / 4 = 2.5 ==截取整数==> 2 => 2.00000 
 double d1 = 10 / 4; 
 double d2 = 10.0 / 4; 
 //如果希望保留小数,参与运算数必须有浮点数 
 //给大家一个取模的公式 
 //a % b = a - a / b * b 
 int res1 = 10 % 3; // 求 10/3 的余数 1 
 int res2 = -10 % 3; // = -10 - (-10) / 3 * 3 = -10- (-3) * 3 = -10 + 9 = -1 
 int res3 = 10 % -3; // 10 - 10 / (-3) * (-3) = 10 - 9 = 1 
 int res4 = -10 % -3; // ? -1
 
 
 printf("\nd1=%f d2=%.2f res1=%d res2=%d res3=%d res4=%d", d1, d2, res1, res2,res3,res4); 
	
}

代码展示2:

#include<stdio.h>
void main(){

    int i = 10;
    int j = i++; // 运算规则等价是 int j = i; i = i + 1; ==> j = 10, i=11
    int k = ++i; // 运算规则等价 i = i + 1; int k = i; ===> i=12, k =12

    printf("\n i=%d j=%d", i, j); //i=12 j=10 
    printf("\n i=%d k=%d", i ,k );// i = 12 k = 12

    //++ 或者 -- 还可以独立使用, 就相当于自增 
    //k++ 等价于 k = k +1 
    //++k 等价于 k= k +1 
    //如果独立使用 ++k 和 k++ 完全等价 
    k++;  // k = 13 
    ++k;// k = 14 
    printf("\n k=%d", k); //k = 14
}

细节说明

1)对于除号“/”,它的整数除和小数除是有区别的:整数之间做除法时,只保留整数部分而舍弃小数部分。 例 如:int x= 10/3 ,结果是 3
2)当对一个数取模时,可以等价 a%b=a-a/b*b , 这样我们可以看到 取模的一个本质运算。
3)当 自增 当做一个独立语言使用时,不管是 ++i; 还是 i++; 都是一样的,等价
4)当 自增 当做一个 表达式使用时 j = ++i 等价 i = i + 1; j = i;
5)当 自增 当做一个 表达式使用时 j = i++ 等价 j = i; i = i + 1;

自增,自减课堂练习 1

#include<stdio.h>

void main(){
	
 	int i1 = 10, i2 = 20; 
    int i = i1++; //i = 10 , i1 = 11
    printf("i=%d\t",i); 
    printf("i1=%d\n", i1);
    i = ++i1; //i = 12 , i1 = 12
    printf("i=%d\t", i);
    printf("i1=%d\n", i1); 
    i = i2--; //i = 20 ,i2 = 19
    printf("i=%d\t",i);
    printf("i2=%d\n",i2); 
    i = --i2; //i = 18 , i2 =18
    printf("i=%d\t", i);
    printf("i2=%d\n", i2);
	
}

在这里插入图片描述

课堂练习 2

1)假如还有 97 天放假,问:xx 个星期零 xx 天

在这里插入图片描述

2)定义一个变量保存华氏温度,华氏温度转换摄氏温度的公式为:5/9*(华氏温度-100),请求出华氏温度对应的摄氏温度。

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值