c语言打印double类型
double类型变量C语言里输出时的格式说明符是%f。
float和double类型的输出时的格式说明符都是%f,这是由于向那些未在原型中申明参数类型的函数传递参数时,float型会自动转为double型,所以用%lf和%f结果都一样。
例如:
double a = 3.1323;
float b = 0.234;
printf("%lf
", a); // 输出结果为3.1323
printf("%f
", b); // 输出结果为0.234
扩展资料:
1、双精度浮点型,此数据类型与单精度数据类型(float)相似,但精确度比float高,编译时所占的内存空间依不同的编译器而有所不同,是double float数据类型,C/C++中表示实型变量的一种变量类型。
2、此数据类型与单精度数据类型(float)相似,但精确度比float高,编译时所占的内存空间依不同的编译器而有所不同,通常情况,单精度浮点数占4字节(32位)内存空间,其数值范围为-3.4E38~3.4E+38,;双精度型占8 个字节(64位)内存空间,其数值范围为-1.7E308~+1.7E308。
资料来源:百度百科:双精度浮点型
1、%f 是输出 float 型变量;%f 是输出 double 型变量;%Lf 是输出 long double 型变量。
2、在C语言中,对于数值类型只有通过printf类函数输出这一种方式,比如printf, sprintf, fprintf等。这类函数输出时要求有格式符号,其中long double的格式符号为%Lf。
以下是一个简单的参考代码,输出到标准输出设备。
#include int main(){long double v = 1.23;printf("%Lf
", v);//采用%llf格式输出long double 类型return 0;}
拓展资料:
C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。
二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。目前2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉字编程。
在使用是,double的通配符为%lf。
比如定义double a = 1.234;
可以用
printf("%lf", a);
实现打印。
默认打印6位小数,可以通过
printf("%.xlf",a);
来控制小数位数。 其中x为常数,代表打印的小数位数。
除此外,还可以用
printf("%e", a);
实现以科学计数法来输出a。
如果不想自行选择科学计数法还是正常小数输出,可以由系统自行选择最短情况,只能控制,只需要
printf("%g", a);
%f:浮点型输出,默认保留6位小数位,四舍五入或补零;
%g,G:以%f或%e中较短的输出宽度输出单、双精度实数;
printf("%d %.8g\n",i,sum);
C语言怎么输出15有效数字的double型数据
在C语言中,double可以表示15位的有效数字,但是如果存在double类型的变量d,用printf输出最基础的格式为 printf("%lf", d);但是C语言默认输出只有6位小数,即6位有效数字。要扩大有效数字的长度,可以采用 .Nlf的格式,其中N为常数,为有效数字的长度。要输出15位,可以使用 printf("%.15lf", d)...
c语言中怎么输出 long double类型
输出int , 用%d 输出float, 用%f 输出double,用 %lf 输出long int ,用%ld
C语言中double要输出几位小数?
C语言中double要输出几位小数?C语言中double预设输出 6 位小数。如果要控制输出小数位数,可以格式化输出。printf("%.3lf ", d); "%.3lf" .3 则是输出 3 位小数 printf("%.4lf ", d); "%.4lf" .4 则是输出 4 位小数 c语言中想要让输出数字保留几位小数该怎么做?举个例...
c语言printf问题:为什么printf不能用%lf输出double类型,而要用%f呢...
可以用%lf 应该说double类型的数据用%lf scanf当中若是对双精度的变量赋值是必须是%后跟lf,而printf当中可以用%f也可以用%lf没有限制
c语言的long double怎么输出
用L表示,通常和浮点转换说明一起使用,表示long double类型的值。详细请参考:(来自《C Primer Plus(第6版-中文版)》第83页)
C语言 关于float 和 double 输入时 如果是float必须用%f double必须用...
输入时float 用 %f, double 用 %lf, 这是约定(规定)。数据可以用定点格式,也可以 E 格式。输出float 用 %f, double 可以用 %lf, 也可以用 %f, 这将按默认 定点格式输出。没给 场宽和小数位数 时 按 默认位数输出。若给了 场宽和小数位数 时 按 给定的 输出,若给的宽度不足时...
c语言double类型不能用%d输出,会出错
f 浮点数 s 字符串 c 单个字符 p 指针的值 e 指数形式的浮点数 x, %X 无符号以十六进制表示的整数 o 无符号以八进制表示的整数 g 自动选择合适的表示法 p 输出地址符 可以在"%"和字母之间加小写字母l, 表示输出的是长型数。例如: %ld 表示输出long整数 lf 表示输出double浮点数 你用%d去...
C语言中double要输出几位小数?
C语言中double默认输出 6 位小数。如果要控制输出小数位数,可以格式化输出。printf("%.3lf ", d); \/\/ "%.3lf" .3 则是输出 3 位小数。printf("%.4lf ", d); \/\/ "%.4lf" .4 则是输出 4 位小数 。C语言兼顾了高级语言的汇编语言的优点,相较于其它编程语言具有较大优势...
在c语言 能输出double型变量x的值的函数 是 getchar putchar scanf prin...
输出函数是putchar和printf,putchar只能输出字符常量和字符型变量,printf可以输出各种类型变量,所以答案是printf。另外,getchar和putchar一对,针对字符及字符变量进行操作,scanf和 printf一对,可以输入输出各种类型变量, 设ch为char型变量,i 为整型变量,用法如下,输入: c = getchar(); sc...
c语言float和double保留小数点后几位
c语言float和double保留小数点后6位。C语言中,输出double类型(双精度实型)以及float类型(单精度实型)时,默认输出6位小数(不足六位以0补齐,超过六位按四舍五入截断)。如果想小数点后面16位,写成%.16lf,不会自动四舍五入的,double是一个近似值,通常没有办法做的很精确。通常能精确到小数点...
司秋茴三: printf("%f",a); 只要前面定义是double形,输出就是double形
满洲里市17720332391: 在c语言当中怎么输出double - ?
司秋茴三: 用%lf输出 比如 double a=1.1; printf("%lf\n", a);
满洲里市17720332391: c语言中 想输出double类型的 是%lf吗 不是的话应该是什么 - ?
司秋茴三: 输出时都行. 但格式用在输入语句里,不能与float 的 %f混淆, double 必须用 %lf
满洲里市17720332391: c语言中怎么输出 long double类型 - ?
司秋茴三: 输出int , 用%d输出float, 用%f输出double,用 %lf输出long int ,用%ld
满洲里市17720332391: C语言中想输出double和long double型分别用什么控制字符? - ?
司秋茴三: 这个很简单丫! 如果是【输出printf】的输出项是double或float时,可以用f或e作为格式描述字符,(其中double也可以用%lf或%le). 注意:如果是【输入scanf】的输入项为double时,则必须用%lf或%le【必须有个l】作为格式描述字符.位于输入项为float与上面的一致. 这个很重要哦!特别是scanf,别搞错了,二级选择题都会考哦!
满洲里市17720332391: c 语言定义s 为double 类型 - ?
司秋茴三: double是C语言的一个关键字,代表双精度浮点型.2113 占8 个字节(64位)内5261存空间.其数值范围为1.7E-308~1.7E+308,双精度完全保证的有效数字是410215位,16位只是部分数值有保证.1653 可以用格回式化输入输出语句scanf和printf进行double类型的输入输出,格答式化字符为%lf.定义 double a; 可以用 scanf("%lf", &a); 进行输入.用 prinf("%lf",a); 进行输出.
满洲里市17720332391: c语言把数字字符串转换成double型数字 - ?
司秋茴三: sscanf(,"%f",);这样得到的是float类型的,然后将其强制转换为double类型
满洲里市17720332391: c语言如何把double 型数字输出结果保存到文件 比如说是11.23456输出保存到文件 - ?
司秋茴三: #include <stdio.h>int main() {double d = 11.23456; // 写入{FILE* file = fopen("./test.dat", "wb"); //以二进制写方式打开文件if( file != NULL ){fwrite( &d, sizeof(d), 1, file ); //把变量d的内容写入文件fclose( file );}} // 读取{FILE* ...
满洲里市17720332391: C语言中,已经定义一个数为long double型,该用什么格式输出? - ?
司秋茴三: %lf是long double的输出格式.不要用%f,这是float和double的输出格式,会丢失精度.
满洲里市17720332391: c语言 如何输入,输出一个double型数.为什么我的输出的总是带负号的一大串数字. - ?
司秋茴三: double x11;scanf("%lf",&x11);//输入用%lf 不用加数字的