加、减、乘、除、求余
加+、减-、乘*
这三个运算符和数学运算是一样的。
除/
C语言的除法与数学运算的除法不一样!!
1.整型int 除以/ 整形型int 时,计算结果只取整数部分,且小数部分全部舍去,不遵循四舍五入法则。
2.当式子里有一个数是浮点数float时,这才是数学运算中的除法!
求余%
参与运算的数据只能是整型int
//整数的算术运算
#include<stdio.h>
int main()
{
int a,b;
printf("input the number a:");
scanf("%d",&a);
printf("input the number b:");
scanf("%d",&b);
printf("a=%d,b=%d\n",a,b);
printf("a+b=%d\n",a+b);
printf("a-b=%d\n",a-b);
printf("a×b=%d\n",a*b);
printf("a÷b=%d……%d\n",a/b,a%b);
return 0;
}
//实数的算术运算
#include<stdio.h>
int main()
{
int a,b;
printf("input the number a:");
scanf("%d",&a);
printf("input the number b:");
scanf("%d",&b);
printf("a=%d,b=%d\n",a,b);
printf("a+b=%d\n",a+b);
printf("a-b=%d\n",a-b);
printf("a×b=%d\n",a*b);
printf("a÷b=%d\n",a/b);
return 0;
}
注意!计算机在运行程序前总是先把代码转为二进制,运行结束后再把二进制转为十进制。在小数部分,有时候十进制转成的二进制是无限小数,但计算机的储存能力有限,不可能保留无限,因此必定会舍弃一些数字,导致最后运算的结果有一定“误差”。
关于各种进制之间的相互转化,理论上不应该在这里解释,但毕竟编程的物质基础就是计算机,有需要的话还是需要讲一下的。如果大家不着急的话,我就随缘更新了。
以前的文章提到数据类型中有字符型,其实字符型可以按ASCII码看成实型数据,换句话说字符可以直接参与加减乘除求余,只是输入和输出的数字都会转换成相应字符。
ASCII码或许笔者可以在这里打出来,但是笔者比较懒,大家自己上网找。
//利用ASCII码的规律,可以实现字母的大小写转换
#include<stdio.h>
int main()
{
char c,d;
printf("input a lowercase letter:");
scanf("%c",&c);
d=c-32;//这里的32是查表计算得到的,也可以直接写成d=c-('a'-'A');注意这里的字符型数据必须带单引号才可能被识别到
printf("%c\n",d);
return 0;
}