C语言也可以进行加减乘除运算,但是运算符号与数学中的略有不同,见下表。
我们先来看一段代码:加号、减号与数学中的一样,乘号、除号不同,另外C语言还多了一个求余数的运算符。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 #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你也可以让数字直接参与运算:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 #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;这样的语句是错误的。
加减乘除的简写
先来看一个例子:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 #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;。
下面的简写形式也是正确的:
1 2 3 4 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 仅是一种简写,不会影响效率。
» 本文链接:
http://www.0523jz.com/2541.html
» 订阅本站:
http://www.0523jz.com/feed
» 转载请注明来源:王桂明's Blog
» 《第3章 变量和数据类型 9、C语言加减乘除运算》