永发信息网

C语言的%e为什么后面要+个数啊???,谁说下,比如;printf("%e",d)

答案:4  悬赏:30  手机版
解决时间 2021-03-31 09:52
  • 提问者网友:寂寞梧桐
  • 2021-03-31 05:15
C语言的%e为什么后面要+个数啊???,谁说下,比如;printf("%e",d)
最佳答案
  • 五星知识达人网友:罪歌
  • 2021-03-31 05:53
float和double属于浮点型的数据类型,我说下数据的存储方式吧。
对于整型数据(int, long等)按照二进制保存,比如3保存在电脑中的形式为0000 0011
而对于浮点型就要分多部分存储,包括指数部分和小数部分,比如说0.75用二进制表示为0.11,在电脑中存的时候会变成1.1*2^(-1)的样子存储,其中整数部分为1,小数部分为.1,指数部分为-1(转换的规则是把整数部分变成1),电脑会把小数部分和指数部分存起来(整数部分因为只可能是1所以就不存了)。
输出的时候也是这样,3.562323+0意思是说3.562323*10^0,如果d=35.6232334输出就会变成3.562323+1意思是说3.562323*10^1,同理如果d=0.356232334输出3.562323-1。
要注意的是,在C语言中,默认输出的小数点后6位,多余的位数就不输出了。
手敲的,不知道有木有敲错的地方,见笑了。
全部回答
  • 1楼网友:旧脸谱
  • 2021-03-31 08:12
你说的是d吗?
  • 2楼网友:污到你湿
  • 2021-03-31 07:35
如果说你要输出100 d里面存得数就是100 ","前面的是输出100这个数的格式类型(可以输出100 可以100.00可以输出100.0000 )那个%e就是决定输出什么格式的 ","后面的是代表100存在d里面
  • 3楼网友:冷風如刀
  • 2021-03-31 06:35
float d;
d=3.56232334;
printf("%e",d);
这是一个输出函数,那么上面的e就应当改为 f,即printf("%f",d); 其中f 是变量说明,这里是浮点型数据,而后面的d就是你要输出的变量。
还有输入函数的格式为:scanf("%f",&d); 你看到没有,在d的前面多了个&,这个符号就是取地址的意思,即输入一个数据把它存在地址为d的这个变量里面。
完整的写一下:
#include
void main()
{
float d ;
scanf("%d",&d);
printf("%f",d);
}
d=3.56232334
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯