eg:现让求圆的面积(半径r,Π按3.14算),求圆的面积。(ps : 3.14*1*1 和 3.14*5*5)
思想 : 当半径为1时,此时圆面积为3.14;当半径为5时,此时圆面积为78.5
将两面积同时乘以100,然后同时%10此时看谁的值不等于0,就打印小数点后有两位小数的数,然后剩下的就打印小数点后有一位小数的数(如果现有小数点后有三位小数,两位小数,和一位小数的三个数,此时先同时*1000%10,看谁的值不等于0,谁就是小数点后有三位小数的那个数,然后剩下的两个数再在原先数字上*100%10,然后同上)
代码:
#include <stdio.h>
int main()
{
int r = 0;
scanf("%d", &r);
double s = 3.14 * r * r;
//判断面积(s)是否在计算出来后为整数
if (s - (int)s)
{
//判断面积(s)是否是小数点后一位小数
if ((int)(s * 100) % 10 == 0)
printf("%.1lf\n", s);
else
printf("%.2lf\n", s);
}
else
printf("%d\n", (int)s);
return 0;
}