正负号与被除数一致。
3 % (-5) == 3
(-3) % 5 == -3
不用求余运算符,求出余数。
int x, y;
答:x - x / y * y;
const int i = 10;
const固定恒定,常量
左值:能放在赋值号被赋值的值。常量不可以修改。
小数除以大数,则商为零,余数是小数本身。
快速计算
对一个整数做%10的操作,就得到它的个位数
快速计算
m%/=10
第1次,m=m%10=1234%10=4
第2次,m=m%10=123%10=3
第3次,m=m%10=12%10=2
第4次,m=m%10=1%10=1
对一个整数做/10的操作,就去掉了它的个位数
m/=10 不断循环
当m=1234
第1次,m=m/10=1234/10=123
第2次,m=m/10=123/10=12
第3次,m=m/10=12/10=1
第4次,m=m/10=1/10=0
如何看懂一个程序,分三步:
1流程
2每个语句的功能
3试数
测试程序常使用边界数据,如有效范围两端的数据、特殊的倍数等,个位数,10,0,负数
什么叫n进制?
逢n进1
1 把十进制的256转换为十六进制。
让256不断除以16,一直除到0为止
余数
16 | 256 0 // 256除以16,余数0
16 | 16 0 // 16除以16,余数0
16 | 1 1 // 1除以16,余数1
0 // 一直除到0为止
答案为:
0X100
2 把十六进制的0X100转换为十进制。
0*(16^0)+0*(16^1)+1*(16^2)=256
自增(或者自减)
分类:
前自增
++i
后自增
i++
前自增和后自增的异同:
相同:
最终都使 i 的值加1
不同:
前自增整体表达式的值是 i 加1之后的值
后自增整体表达式的值是 i 加1之前的值
#include <stdio.h>
main()
{
int i;
int j;
int k;
int m; i = j = ;
k = i++;
m = ++j; printf("i=%d,j=%d,k=%d,m=%d\n", i, j, k, m);
}
输出格式:
i=4,j=4,k=3,m=4
请按任意键继续. . .
逗号运算符
#include <stdio.h>
main()
{
int i;
int j = ; i = (j++, ++j, j + , j - ); printf("%d\n", i);
}
输出格式:
1
请按任意键继续. . .
j++
此时,j=3
++j
此时,j=4
i=j+2
此时,i=4+2=6
i=j-3
此时,i=4-3=1
1计算矩形的面积。
#include <stdio.h>
main()
{
double a, b, area;
a = 1.2; /*将矩形的两条边长分别赋给a和b*/
b = 3.6;
area = a*b; /*计算矩形的面积并存储到变量area中*/
printf("a=%f,b=%f,area=%f \n", a, b, area); /*输出矩形的两条边长和面积*/
}
2计算圆的面积。
#include <stdio.h>
#define PI 3.14159<span style="white-space:pre"> </span>/*定义符号名PI为3.14159*/
main()
{
double r, s;
r = 5.0;
s = PI*r*r;
printf("s=%f \n", s);
}