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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在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;

参考技术A 1. 用float 带小数
2. 用int强制转换就是四舍五入
3. 最好是看官方的文档,有中文英文的,里的示例代码很详细
参考技术B 利用取整运算的截断特点实现。
比如: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本回答被提问者采纳

以上是关于在C语言中的百分比怎么精确到小数和保留整数四舍五入?的主要内容,如果未能解决你的问题,请参考以下文章

C语言中如何保留一位小数点?

oracle 保留小数问题

保留一位小数有几种方式?

C语言四舍五入保留两位小数

C语言四舍五入保留两位小数

C语言,一个浮点数,怎么四舍五入保留到个位数