为什么是long double 类型的?而不是 float 类型的?
设有定义:double a,b,c;
若要求通过输入分别给a、b、c输入1、2、3,输入形式如下(注:此处□代表一个空格)
□□1.0□□2.0□□3.0<回车>
则能进行正确输入的语句是
A) scanf("%lf%lf%lf",a,b,c);
B) scanf("%lf%lf%lf",&a,&b,&c);
C) scanf("%f%f%f",&a,&b,&c);
D) scanf("%5.1lf%5.1lf%5.1lf",&a,&b,&c);
B
lf 是指 double
Lf指 long double DarkSE 发表于 2016-8-29 12:58
B
lf 是指 double
Lf指 long double
C 和D能说下为啥不对吗? B iszhuangsha 发表于 2016-8-29 23:35
B
能说下C,D错的理由吗? 我感觉是d啊。。。%号前面的小数点后面不是表示保留几个小数位吗,个人愚见,请高手指教 辣的果丶 发表于 2016-8-29 21:13
C 和D能说下为啥不对吗?
C 的话是%f,对应的是float型的数据
D 的话是%5.1lf 其中不能存在格式控制,这是错误的写法{:9_231:} D中的格式控制符是输出的时候用的(格式化输出),我从来没见到输入时候用过,C类型错
页:
[1]