您的位置:首页 > 编程语言 > C语言/C++

37 C语言加减乘除运算

2017-05-30 20:33 316 查看
C学习网:链接->C学习网

C训练网:链接->C训练网

C语言也可以进行加减乘除运算,但是运算符号与数学中的略有不同,见下表。

加法减法乘法除法求余数
数学+-×÷
C语言+-*/%
加号、减号与数学中的一样,乘号、除号不同,另外C语言还多了一个求余数的运算符。

我们先来看一段代码:

#include <stdio.h>
#include <stdlib.h>
int main()
{
int a=12;
int b=100;
float c=8.5;

int m=a+b;
float n=b*c;
double p=a/c;
int q=b%a;

printf("m=%d, n=%f, p=%lf, q=%d\n", m, n, p, q);

system("pause");
return 0;
}

输出结果:
m=112, n=850.000000, p=1.411765, q=4

你也可以让数字直接参与运算:

#include <stdio.h>
#include <stdlib.h>
int main()
{
int a=12;
int b=100;
float c=8.9;

int m=a-b; // 变量参与运算
int n=a+239; // 有变量也有数字
double p=12.7*34.3; // 数字直接参与运算

printf("m=%d, n=%d, p=%lf\n", m, n, p);
printf("m*2=%d, 6/3=%d, m*n=%ld\n", m*2, 6/3, m*n);

system("pause");
return 0;
}

输出结果:
m=-88, n=251, p=435.610000
m*2=-176, 6/3=2, m*n=-22088

对于除法,需要注意的是除数不能为 0,所以诸如
int
a=3/0;
这样的语句是错误的。


加减乘除的简写

先来看一个例子:

#include <stdio.h>
#include <stdlib.h>
int main()
{
int a=12;
int b=10;

printf("a=%d\n", a);

a=a+8;
printf("a=%d\n", a);

a=a*b;
printf("a=%d\n", a);

system("pause");
return 0;
}

输出结果:
a=12
a=20
a=200

第一次输出 a 原来的值;
a=a+8;
相当于用
a+8
的值替换原来
a 的值,所以第二次输出 20;第三次用
a*b
的值替换第二次的值,所以是
200。

在C语言中,表达式
a=a#b
可以简写为
a#=b
,#表示
+、-、*、/、% 中的任何一种运算符。

上例中
a=a+8;
可以简写为
a+=8;
a=a*b;
可以简写为
a*=b;


下面的简写形式也是正确的:

int a = 10, b = 20;
a += 10; //相当于 a = a + 10;
a *= (b-10); //相当于 a = a * (b-10);
a -= (a+20); //相当于 a = a - (a+20);

注意:a#=b 仅是一种简写,不会影响效率。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: