www.rtmj.net > C语言保留n位小数

C语言保留n位小数

可以这样:int a,b; float c; c=(int)(a*10.0/b+0.5)/10.0; 这样就可以让结果c只保留一位小数.只是将a/b保留一位小数的结果赋给c,并不改变a/b本身的值,因此a/b仍然是0.333

默认6位,不过可以通过程序控制为想要的位数;如: printf("%12.15lf\n",x);表示输出占12格的小数位数为15为的x的值; printf("%.8lf\n",x);表示输出小数位数为8为的x的值.

用定点格式.float 型 %.2f 就是小数2位, %.1f 就是小数1位 double 型 用 %.2f 就是小数2位, %.1f 就是小数1位 double 型 用 %.2lf 就是小数2位, %.1lf 就是小数1位

printf("%2f\n",d);//跟printf("%f\n",d);的效果在这是一样的 改成:printf("%.2f\n",d); //加小数点,后面数字是几就是保留几位小数

请务必采纳 有很多方法 我只写一种 不一定是最好的 但你一定能看的懂#include <stdio.h> void main() { int n; float number; int i = 0; printf("请输入保留的位数:"); scanf("%d",&n); printf("请输入目标数:"); scanf("%f",&number);

一.%nf 即输出的数字占n位 当原数字位数大于n时原样输出,原数字位数小于n时输出数字左端补上空格,比如原数字为a=1.23456;n为4时输出为1.23456,n为9时输出为 (空格空格1.23456) 二.%n.mf 即输出总共占n位其中有m位小数 如a=1.23456 用%4.2f输出为1.23如果用%5,1f输出为123.4即长度为5小数为1!这里也有当原数字长度小于n时左端补空格这个规则!还有就是当n前面有个负号时即%-nf或%-n.mf时就右端补空格!

可能下面方法有点笨.假如你要对一个数a保留到小数点后面n位 你可以这样 temp=pow(0.1,n); b=a+temp*0.5; c=b-fmod(b,temp); 上函数都在math.h中

#include<stdio.h>#include<stdlib.h> void main(){ int i=0; int m=10; int n=3; int s=0; s=m/n; printf("%d",s); printf("."); for(i=0;i<100;i++) { s=m/n; m=m%n*10; printf("%d",s); } printf("\n"); }

你好!用c++怎么输出小数点后n位的方法:包含头文件#include 用setprecision(n)设置精度,其中n表示精确到小数点后n位 例子:double t = 3.33333333; cout输出就是8位精度小数 仅代表个人观点,不喜勿喷,谢谢.

printf("%d.",n/m);n=n%m;while(k--){ printf("%d",n/m);n*=10; n=n%m;}

网站地图

All rights reserved Powered by www.rtmj.net

copyright ©right 2010-2021。
www.rtmj.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com