科学计数法及左右对齐
本帖最后由 CaptainBiken 于 2020-8-12 18:06 编辑代码来自第四节:变量的课后习题
printf("右对齐,指数形式:%10e\n", 520000.0);
结果为5.200000e+05
printf("左对齐,指数形式:%-10E\n", 520000.0);
结果为5.200000E+05
问题:
1.其中e和E的表示有什么区别?
2.怎么看出来结果是左对齐还是右对齐呢?
3.怎么看出来这两种结果的位数为10位?520000005是九位,e/E占一位?
求大佬解答!感谢 1. 输出的大小写E
2.上面位数左右对齐看不出,你可以把10改大一点
3. 10位是你定义的 baige 发表于 2020-8-12 17:58
1. 输出的大小写E
2.上面位数左右对齐看不出,你可以把10改大一点
3. 10位是你定义的
感谢大佬
大佬的意思是e和E表示的含义是一样的吗?(在表示科学计数的时候等同?) CaptainBiken 发表于 2020-8-12 18:03
感谢大佬
大佬的意思是e和E表示的含义是一样的吗?(在表示科学计数的时候等同?)
相同 baige 发表于 2020-8-12 18:10
相同
原来如此
那小甲鱼在这里先用e后用E就是闲的啊.........{:5_97:}
大佬能不能再看下我的第三个问题呢,一开始我的表述不是很清楚,又重新编辑了一下
再次感谢大佬 这个第三是我说错了,%e在一些编译器默认宽度是12位,一些是13位,当我们设置的宽度小于编译器默认的宽度时,编译器会按照默认输出,你上面的输出就是12位的, baige 发表于 2020-8-12 19:23
这个第三是我说错了,%e在一些编译器默认宽度是12位,一些是13位,当我们设置的宽度小于编译器默认的宽度时 ...
感谢大佬
我去试了下,%13e及以下都没有差别,%14e开始才能看出来左右对齐,所以我认为我的输出应该是13位
页:
[1]