C语言小数点后面的0
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言小数点后面的0相关的知识,希望对你有一定的参考价值。
写出下面程序的运行结果,然后修改该程序,使其能输出实数2.5(至少用两种以上方法解决。
#include<stdio.h>
void main()
int a=5,b=2;
float c;
c=a/b;
printf("%f\n",c);
这个答案我怎么得出的都是2.000000
就是改了以后也是2.500000
怎么才能让后面的0没有啊
%.1f这个不能用哦,我还没学到这,不能用啊
#include<stdio.h>
void main()
int a=5,b=2;
float c;
c=(float)a/(float)b;
printf("%f\n",c);
#include<stdio.h>
void main()
float a=5,b=2,c;
c=a/b;
printf("%f\n",c);
我的答案就 是这2个,但是都是2.500000
怎么一个一个打印,能把程序写下来吗?
a,b,d
定义为整型,也就是只能保存整数
变量c定义为单精度的浮点型,也就是可以保存小数,默认保存六位小数,不足的用0补齐
如果要让变量c不保存小数,只需要改成
printf("这两个数的商为:%.0f\n"
,c);
及可
.0表示保存0位小数 参考技术A .1f为什么不能用,编程这种东西就要求灵活,只要能实现想要的效果,什么方法都无所谓.难道别人要打你,你能说我没学过打架,你不要打我么
除了.1f,还可以用%g,%g是在科学计数法和普通方法之间自动选择最短的形式输出.
当然,将数放到字符串中也行,算是个比较"笨"的方法,tyoukiLL的方法也有点问题,应该是从字符串的右边开始,找到第一个非'0'的字符停下,然后左边开始输出,到这个字符为止.本回答被提问者采纳 参考技术B %.1f这个不能用(最好用)
不行的话放到字符数组里,然后1个1个打印。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
float a=5,b=2,c;
int i = 0;
char d[10];
c = a/b;
sprintf(d,"%f",c);
while (d[i] != '0')
printf("%c",d[i]);
i++;
getchar();
return 0;
参考技术C 一个一个打印。。。
以上是关于C语言小数点后面的0的主要内容,如果未能解决你的问题,请参考以下文章
关于用C语言求一个小数求小数点后面的位数多少的问题,求大神解答。