在C语言中的百分比怎么精确到小数和保留整数四舍五入?

请写出代码加一些注释

#include <stdio.h>

int main()

{ int a,b,k;

  printf("请输入分子分母和百分比的小数位数:\n");

  scanf("%d%d%d",&a,&b,&k);

  printf("%d/%d=%.*f%%\n",a,b,k,a*100.0/b);

  return 0;

}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-12-24
1. 用float 带小数
2. 用int强制转换就是四舍五入
3. 最好是看官方的文档,有中文英文的,里的示例代码很详细
第2个回答  2019-10-24
利用取整运算的截断特点实现。
比如:int a=0.75;取整后赋值给a的是0,小数点后面的被截断了。
如果要做整数的四舍五入,那么可以:a=(int)(0.75+0.5);取整后得到的与数学中四舍五入的结果一致,都是1;
如果要进行小数点后面的四舍五入,可以这样计算:
要保留小数点后面两位的小数,即在小数点后面两位上做四舍五入,0.756
float a=0.756,b; int x; b=a*100; b+=0.5; x=b; b=x/100;
运算是这样的:先将0.756乘以100,得到75.6,然后利用取值运算的截断做四舍五入,75.6+0.5=76.1取整后等于76,再除以100,得到结果:0.76本回答被提问者采纳
相似回答