這道題為什么float 跟double 的輸出都是97.000000,float不是4個(gè)字節(jié)嗎輸出不是應(yīng)該是97.0000嗎?求解
#include <stdio.h>
int main()
{
? ? char c = 'a';
? ? int n = c; ? ? ?//將c賦值給n
? ? float f = c; ? ?//將c賦值給f
? ? double d = c; ? ?//將c賦值給d
? ? printf("%d\n",n);
? ? printf("%f\n",f);
? ? printf("%lf\n",d);
? ? return 0; ? ?
}
2016-11-21
我找到答案了,因?yàn)镃語(yǔ)言默認(rèn)輸出小數(shù)位數(shù)都取6位,但是小數(shù)保留10位就不一樣了,double的精度更高
2016-11-21
?printf("%f\n",f);這里%f的意思是6位小數(shù):
2016-11-20
#include <stdio.h>
int main()
{
? ? char c = 'a';
? ? int n = c; ? ? ? ? //將c賦值給n
? ? float f = n; ? ? ?//將c賦值給f
? ? double d = f ; ? ?//將c賦值給d
? ? printf("%d\n",n);
? ? printf("%f\n",f);
? ? printf("%lf\n",d);
? ? return 0; ? ?
}