重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
可以在输出时,指定小数点后的有效位数,实现精确到若干位的效果。
创新互联公司专注为客户提供全方位的互联网综合服务,包含不限于做网站、网站制作、周宁网络推广、重庆小程序开发公司、周宁网络营销、周宁企业策划、周宁品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联公司为所有大学生创业者提供周宁建站搭建服务,24小时服务热线:18980820575,官方网址:www.cdcxhl.com
要精确到小数点后若干位,则数据类型为浮点型,可能为单精度(float)或双精度(double)。
在C语言中,使用格式化输出函数printf来实现输出。
输出格式为
%.NF
1 %为格式化字符串的引导字符。
2 .N表示指定显示N位小数。
3 F为类型字符,对于float, F值为f, 对于double,F值为lf。
举例:
1 要输出float a=1.23234; 保留3位小数的写法为:
printf("%.3f",a);
2 输出double b=123.345232; 保留4为小数,写法为:
printf("%.4lf",b);
把scanf("%15.10f",x);应该改成scanf("%15lf",x);这样就好了。
代码中x是double型的,在输入数据的时候是不允许使用%f的,double型的数据输入必须使用%lf
还有,scanf("%15.10f",x);15.10这个是不允许出现的,在数据输入的时候只能指定输入数据的总长度,不能指定小数点后的长度。
扩展资料:
scanf(函数原型
int scanf(const char * restrict format,...);
函数 scanf() 是从标准输入流stdin(标准输入设备,一般指向键盘)中读内容的通用子程序,可以说明的格式读入多个字符,并保存在对应地址的变量中。
函数的第一个参数是格式字符串,它指定了输入的格式,并按照格式说明符解析输入对应位置的信息并存储于可变参数列表中对应的指针所指位置。每一个指针要求非空,并且与字符串中的格式符一一顺次对应。
参考资料来源:百度百科-scanf (计算机语言函数)
0.12345的小数点后第一位就是tab[0]=(int)(0.12345*10)
第二位就是tab[1]=((int)(0.12345*100)%10
第三位就是tab[2]=((int)(0.12345*1000)%10
以此类推
程序设计就是让计算机按照一定的指令来进行工作,可以说数据的处理是程序设计的主要任务。那么,C语言中的小数(float,double)怎么输出?欢迎大家阅读!更多相关信息请关注相关栏目!
小数也称实数或浮点数。例如,0.0、75.0、4.023、0.27、-937.198 都是合法的小数。这是常见的小数的表现形式,称为十进制形式。
除了十进制形式,也可以采用指数形式,例如 7.25×102、0.0368×105、100.22×10-2等。任何小数都可以用指数形式来表示。
C语言中的小数也有这两种表示形式。在书写时,十进制形式和数学中的一样,指数形式有所差异。
在C语言中小数的指数形式为:
aEn 或 aen
a 为尾数部分,是一个十进制数,n 为指数部分,是一个十进制整数,E或e是固定的字符,其值为 a×10n。例如:
2.1E5 = 2.1×105,其中2.1是尾数,5是指数。
3.7E-2 = 3.7×10-2,其中3.7是尾数,-2 是指数。
0.5E7 =0.5×107,其中0.5是尾数,7是指数。
C语言中小数的.数据类型为 float 或 double:float 称为单精度浮点数,double 称为双精度浮点数。不像整数,小数的长度始终是固定的,float 占用4个字节,double 占用8个字节。
小数的输出
输出 float 使用 %f 控制符,输出 double 使用 %lf 控制符,如下所示:
#include#includeint main(){float a = 0.302f;float b = 1.23002398;double c = 123;double d = 78.429;float e = 128.101;printf("a=%f b=%f c=%f d=%lf e=%lf ", a, b, c, d, e);return 0;}
运行结果:
a=0.302000
b=1.230024
c=123.000000
d=78.429000
e=128.100998
对代码的说明:
1) %f 默认保留六位小数,不足六位以 0 补齐,超过六位按四舍五入截断。
2) 将整数赋值给 float 变量时会转换为小数。