3.2 运算符

(作者:徐诚http://blog.youkuaiyun.com/shizhebsys保留版权)

运算符用于在程序中对常量或变量的数值进行运算操作。根据运算操作的不同,运算符可分为算术运算符、关系与逻辑运算符和位运算符。

3.2.1 算术运算符

算术运算符用于在数值间进行算术运算,其中包括加、减、乘、除和取模等基本运算。在C语言中,进行算术运算的符号见表3.4所示。

3.4 算术运算符

运算符

说明

运算符

说明

+

%

取模

-

减,取反

++

自增

*

--

自减

/

除法

=

赋值运算符

算术运算符的运算规则与代数规则是相同的,例如在结合律上遵循先乘除后加减的规则。下面我们用一个简单的例子来说明算术运算符的使用方法。假设,某超市出售的奶粉每袋29.80元,卫生纸每卷2.00元,购物袋每个0.20元,我们用一个程序来计算3袋奶粉、6卷卫生纸和1个购物袋的总价钱。源代码如下所示:

#include <stdio.h>

#define MP 29.8 // 奶粉的单价

#define BUMF 2 // 卫生纸单价

#define BAG 0.2 // 购物袋单价

int main()

{

float totel_price; // 声明浮点型变量,用于存放总价格

totel_price = MP * 3 + BUMF * 6 + BAG; // 总价格计算公式

printf("%f/n", totel_price); // 输出总价格

return 0;

}

代码中,首先我们将奶粉、卫生纸和购物袋的单价设置为常量,因为这些数值通常不需要修改。然后,声明变量totel_price用于存放总价格,因为总价格中包含小数点,所以其数据类型为单精度浮点型。表达式“MP * 3 + BUMF * 6 + BAG”对应于代数表达式“奶粉 × 3 + 卫生纸 × 6 + 购物袋”。计算可知,该表达式的结果为101.60。最后,程序输出的结果即是表达式的结果。

在两个整数之间使用除法运算符进行运算,所得到的运算结果为商的小数点前的数值,小数点后的数值全部被抛弃。如果使用取模运算符在两个整数之间运算,所得到的结果为两个数相除的余数。如下例所示:

int a, b, c = 7, d = 5;

a = c / d; // 除法运算

b = c % d; // 取模运算

printf("%d/n", a);

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

return 0;

代码中声明了4个整型变量,其中cd在声明时已赋值。然后,使用c除以d的结果为a赋值,使用cd的结果为b赋值。此时,a的数为1b的值为2

自增运算符和自减运算符是C语言特有的运算符,分别表示对操作数进行加1运算,或者减1运算。如下例所示:

char c = 'C'; // 声明字符型变量

c++; // 自增1

printf("%c", c);

该代码的运算结果为“ D”。因为, C语言内所有的字符类型数据使用 ASCII码表示。在内存中, ASCII码又是以整数形式保存。查阅 ASCII码表可知字符“ C”的值为 67,因此变量 c内的数值为 67。进行自增 1运算后,变量 c的值变为 68,对应的 ASCII码字符为“ D”。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值