精华内容
下载资源
问答
  • C语言中常用的小数有两种类型,分别是 float 或 double;...c语言double类型默认输出几位小数?C语言中,输出double类型(双精度实型)以及float类型(单精度实型)时,默认输出6位小数(不足六位以 0 补...

    23ef3ae0c0a0e79aca5dc1ee5d7631b1.png

    C语言中常用的小数有两种类型,分别是 float 或 double;float 称为单精度浮点型,double 称为双精度浮点型。不像整数,小数没有那么多幺蛾子,小数的长度是固定的,float 始终占用4个字节,double 始终占用8个字节。

    c语言double类型默认输出几位小数?

    C语言中,输出double类型(双精度实型)以及float类型(单精度实型)时,默认输出6位小数(不足六位以 0 补齐,超过六位按四舍五入截断)。double a = 1;printf("%lf\n", a);

    输出会是:1.000000

    但是有时六位会显得很长,没必要。比如计算平均分,一到两位小数就足够了。可是有时六位又不够,需要更多位小数,比如计算高精度平方根。这时可以用printf的格式控制。如果要输出n位小数,那么可以用%.nlf的格式。其中n为数字。

    如要输出10位小数,那么printf("%.10lf\n", a);

    即可。

    推荐:《c语言教程》

    展开全文
  • 本文收集整理关于c语言double什么意思的相关议题,使用内容导航快速到达。内容导航:Q1:在c语言中double是什么意思啊?double是指双精度浮点数类型。float指单精度浮点数类型。它们的区别是精度的不同,double类型...

    本文收集整理关于c语言double什么意思的相关议题,使用内容导航快速到达。

    内容导航:

    Q1:在c语言中double是什么意思啊?

    double是指双精度浮点数类型。float指单精度浮点数类型。它们的区别是精度的不同,double类型的精度约等于float的两倍。精度指精确到小数点后多少位。都是用来声明变量或常量类型的。

    Q2:在c语言中double是什麽意思啊?

    表示双精度类型! 你现在刚学 暂时先理解为: float:小数点后面的数少点 double:小数点后面的数多点! 先这样理解吧!祝你好运!

    Q3:c语言double什么意思?

    其数值范围为1.7E-308~1.7E+308,双精度完全保证的有效数字是15位,16位只是部分数值有保证,而单精度保证7位有效数字,部分数值有8位有效数.浮点型从狭义上说就是科学记数法双精度,即double

    Q4:c语言中double是什么意思

    double(双精度浮点型)是计算机使用的一种资料型别。比起单精度浮点数(float),double(双精度浮点数)使用 64 位(8字节) 来储存一个浮点数。 它可以表示十进制的15或16位有效数字,负值取值范围为 -1.7976E+308 到 -4.94065645841246544E-324,正值取值范围为 4.94065645841246544E-324 到 1.797693E+308

    用法:同int float 一样,用于声明变量或定义函数的返回值类型,或可用于类型强制转换。

    例:

    double a;//变量声明

    double sqrt_(double b);//定义函数返回至类型及形参类型

    c=(double)3;//将“3”强制转换为double类型并赋给变量c

    最后想要C/C++学习视频、资料,可以关注“C语言Plus”。

    Q5:c语言double什么意思

    double是C语言的一个关键字,代表双精度浮点型。

    占8 个字节(64位)内存空间。其数值范围为1.7E-308~1.7E+308,双精度完全保证的有效数字是15位,16位只是部分数值有保证。

    可以用格式化输入输出语句scanf和printf进行double类型的输入输出,格式化字符为%lf。

    定义

    double a;

    可以用

    scanf("%lf", &a);

    进行输入。

    prinf("%lf",a);

    进行输出。

    Q6:c 语言中double什么意思?

    c语言的数据类型分为整型变量和实型变量实型变量包括float和double两种,double 为双精度实型变量,float一般为32位,double为64位。整型变量包括int,short,long

    Q7:c语言 (double)的意思

    可以注意到l,i都是整型,所以那个除法运算的结果是整数,系统会自动取整的,所以,当我们需要确保他是含有小数的时候,就需要首先强制转换其中一个为浮点型,可以转换为float或者double。这里就是转换为double

    Q8:c语言中double型数据是什么意思?比如x为double型

    double是双精度浮点数,变量的存储空间要比float占用的多,浮点数表示的精度要更准确。

    Q9:请问C语言里的double是什么意思啊??

    双精度实数。占用字节8有效数字15~16数值范围-1.7*10负308次方~1.7*10的308次方。

    Q10:c语言,double*是什么意思呀

    double *表示指向double型的指针,在声明中可以只写参数类型,不用写参数名称,定义中要写参数类型与名称。

    Q11:c语言中double 什么意思

    双精度浮点型数据,位数应该因编译环境不同而不同吧。

    Q12:c语言中double的意思

    就是保留小数点后6位数的值。。。。 双精度实数。占用字节8有效数字15~16数值范围-1.7*10负308次方~1.7*10的308次方。

    他存储的数字比float的来得大

    展开全文
  • c语言double类型的输入

    万次阅读 2018-10-21 10:33:19
    c语言double类型的输入 double输入用 %lf ,而不能用 %f 今天在使用double类型输入时先用了 scanf("%lf", &a),结果以%f输出的时候都是0,以%g,%e输出似乎是最小的double值 12.3456789 0....

    c语言double类型的输入

    double输入用 %lf ,而不能用 %f

    今天在使用double类型输入时先用了 scanf("%lf", &a),结果以%f输出的时候都是0,以%g,%e输出似乎是最小的double值

    
    12.3456789
    0.000000
    0.00000
    6.952986e-3106.95299e-310
    

    正确的代码如下

    
    #include <stdio.h>
    
    int main()
    {
        double a;
        scanf("%lf", &a);//换成 %f 会无法正确输入
    
        printf("%f\n", a);
        printf("%.5f\n", a);
        printf("%e\n", a);
        printf("%g", a);
    }
    展开全文
  • c语言double类型printf问题

    万次阅读 多人点赞 2018-10-03 11:32:10
    背景:今天在用c语言写程序时遇到了一个问题:printf("%lf",double(r));竟然输出乱码(0.000000),浏览了几十个网页之后,大致找到了问题原因。 结论:在c语言中,double类型的读入必须用"%lf";输出必须用"%f" ...

    背景:今天在用c语言写程序时遇到了一个问题:printf("%lf",double(r));竟然输出乱码(0.000000),浏览了几十个网页之后,大致找到了问题原因。

    结论:在c语言中,double类型的读入必须用"%lf";输出必须用"%f"

    解释:double和float的精度是不同的,故存储空间也是不同的,所以如果要读入double类型,必须要用%lf来读入,以免精度丢失。而输出,由于printf中并无对%lf的严格定义,故使用%lf不一定会出现正确结果。那使用%f输出又如何呢?由于c语言中的默认参数提升规则%f输出的不论是float还是double都会被提升到双精度进行输出,并不会有精度丢失。

    如果使用C++编译器,那么用%lf输出是正确结果,如果是g++编译器,则是会输出错误结果,所以尽量使用%f输出double类型。

    如需更详细解释,请移步C语言官网查看printf详细使用规则。

    展开全文
  • C语言double类型取余操作

    千次阅读 2020-05-12 11:24:28
    double类型的无法使用 解决: float使用fmodf(a,b); double使用fmod(a,b); long double使用fmodl(a,b); #include "stdio.h" #include "math.h" int main(){ double a=73.263,b=0.9973; printf("%g",fmod(a,b)); ...
  • 关于C语言double free

    2018-11-01 09:59:41
    关于代码中double free的错误。   伪代码:  char * str = NULL;  str = (char *)malloc(sizeof (char)*num); //申请内存  free(str);  在一些循环函数中,我们经常会通过判断str是否为NULL,来判断数据的...
  • double a; scanf("%f",&a); //应用scanf("%lf",&a); 执行上面语句时,发现double类型的输入不能使用%f进行输入,得用%lf才能正常得到a的值。 而在输出double类型时却可以用%f,这是因为printf("%f",a);在...
  • C语言中采用float和double关键字来定义小数,float称为单精度浮点型,double称为双精度浮点型,long double更长的双精度浮点型。 2、测试double数据类型 C标准规定,double类型必须至少能表示10位有效数字,且取值...
  • C语言 double int float 运算

    千次阅读 2018-10-31 10:32:01
    原创   #include &lt;stdio.h&gt; #include &lt;string.h&gt; #include &lt;stdlib.h&gt; #include &lt;stdbool.h&gt; void main( ) { ... =2.... double s3...
  • c语言double十六进制输出

    千次阅读 2017-03-14 13:18:53
    自己用%x printf输出double类型数据时,只有32位,用sizeof显示是64位的,后来看到6楼的回答,加上I64就可以了 “回复于: 2007-10-25 14:25:23 printf("%x\n", ch); 其中%x 表示无符号十六进制的整数, 多长...
  • C语言double转long隐形bug

    千次阅读 2016-12-22 22:52:00
    如果double数据比较小的时候,是没有什么事的。  一旦double数值达到一定程度(没有仔细研究),就会出现如下情况。  #include //double doubleA = 301104440.0; double doubleA = 301104440.0; ...
  • #include<stdio.h> int main (void) { float a0,a1,a2,a3; float a,b,c,end1,end2,end3; scanf("%f%f%f%f",&a0,&a1,&a2,&a3); scanf("%f%f",&a,&b);... while(b-a>=0.001) ... end1=a3*a*a*a+a2*a*a+a1*a+a0;...
  • 借助math库的round函数 #include <math.h>...double ext_round(double data, int precision) { double base = pow(10, precision); return round(data * base) / base; } 转...
  • C语言double类型与int类型的转化;

    千次阅读 2019-01-26 13:50:36
    #include&lt;stdio.h&gt; #include&lt;stdlib.h&gt; ... double b;... double d = 3.14;... //将int型的数值a转化为double类型的b c = (int)d; //将double类型的数值d转化为int型的c printf...
  • C语言double保留N位小数

    千次阅读 2014-07-19 12:48:50
    double a=10.01500; a= (long)(a*100); a/=100;
  • C语言Double变量的输入输出

    千次阅读 2016-04-22 21:12:54
    double 类型变量: 输入scanf("%lf",&num); 输出printf("%lf",num);或printf("%f",num); //注:输出时与float无区别
  • 今天写程序在C语言中遇到一个返回double类型的函数 函数内部数据正确 返回后的数据变为零,不能正确返回,解决办法如下: upnumber =upConverToByeFloat(upsen.data ,&upnumber1); 原代码为 upnumber =...
  • c语言double B=6所占字节数多少

    千次阅读 2013-10-20 00:16:20
    【分析说明】C标准并没有指明double类型所占的字节数, 但是C标准指明了double所占的字节数至少是float占用的字节数. 而查看double所占的字节数可以通过sizeof运算符得到, 如 printf("size of double is %u\n", ...
  • 我在用VS2015对一个double类型的数据进行输出我写的是 double num =1324; printf("%lf",num); 其中没有考虑输出格式的问题就使用了%lf,输出一点都没有,当我换成%f的时候也没有出现问题,但是当我换成了...
  • C语言double

    千次阅读 2020-02-13 13:43:43
    众所周知C语言可以提供另外的一种哦浮点数类型double(简称为双精度),而double数据类型和float类型的最小的取值范围都是相同的,但最少必须表示10位有效数字。C语言的另外一种浮点数类型是long double,以此来满足...
  • c语言是%if对应double,%f对应float。scanf():“%lf”用于double类型,“%f”用于float类型printf():“%f”既可用于double类型,也可用于float类型,意思是指“保留6位小数”。%f和%lf分别是float类型和double类型...
  • c语言double与float的区别

    千次阅读 多人点赞 2020-02-03 23:19:07
    c语言double与float的区别 C语言中小数的数据类型为 float 或 double:float 称为单精度浮点数,double 称为双精度浮点数。不像整数,小数的长度始终是固定的,float 占用4个字节,double 占用8个字节。 %f 默认...
  • double p; scanf("%d %d",&n,&m); x = n; y = m; r = n % m; while®{ n = m; m = r; r = n % m; } p = x * y / m; printf("%d %lf",m,p); return 0; } input:1000000 1000000 调试里面显示p溢出???? ...
  • c语言double的用法

    千次阅读 2021-02-01 17:40:29
    转自:http://www.pinlue.com/article/2020/06/0422/0610683953550.html
  • double(双精度浮点型)是计算机使用的一种资料型别。比起单精度浮点数(float),double(双精度浮点数)使用 64 位(8字节) 来储存一个浮点数。 它可以表示十进制的15或16位有效数字,负值取值范围为 -1.7976E+308 到 -4....
  • C语言double型数据

    2014-10-18 16:46:46
    C语言将一个文件中的数据读入一个double型数组
  • c语言double型数据的输入

    千次阅读 2015-07-26 09:55:39
    今天练习在linux下编程C语言,写了一个很小的示例程序,发现结果不能正常显示。起初以为是系统差异的问题就把代码复制到了vc++下运行结果仍然不能正确显示。于是经过多番修改调试将错误确定到了double型数据的输入与...
  • 关于c语言double指针的初始化问题

    千次阅读 2017-10-21 22:34:09
    今天在写一到题目时遇到了一些double类型指针的问题 当定义double*a;时编译给了waring,说是没有给指针初始化,而定义int*a;则不会出现此问题。 然后我就去初始化,刚开始理解错了,用了*a=123;来初始化,继续...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 166,392
精华内容 66,556
关键字:

c语言double

c语言 订阅