标题:这段程序我不理解
取消只看楼主
njbn
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2007-4-2
 问题点数:0 回复次数:2 
这段程序我不理解
#include <stdio.h>
int main (void)
{
const double RENT = 3852.99;
printf ("*%f*\n",RENT);
printf ("*%e*\n",RENT);
printf ("*%4.2f*\n",RENT);
printf ("*%3.1f*\n",RENT);
printf ("*%10.3f*\n",RENT);
printf ("*%10.3e*\n",RENT);
printf ("*%+4.2f*\n",RENT);
printf ("*%010.2f*\n",RENT);
return 0;
}



书上说程序使用关键字const创建了一个符号常量.输出为:

*3852.990000*
*3.852990e+03*
*3852.99*
*3853.0*--------问题
*这个不知道该怎么空格*---------问题
*这个不知道该怎么空格*---------问题
*+3852.99*
*0003852.99*

红色区域不是很明白 , 能解释下吗?[详细点]   


顺便在帮我看看程序里有无错误.



                                           谢谢
搜索更多相关主题的帖子: 空格 常量 const 符号 
2008-06-25 14:16
njbn
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2007-4-2
得分:0 
有2个不太明白

1.不足的话自动扩展,多余的以空格显示-----我该怎么理解这句话,只要我输入了*3852.99*这个 编译器会自动进行安排吗?比如它会自动空10格吗?

printf ("*%10.3e*\n",RENT);       *3.863e+03*   还是
*          3.863e+03*






2.第6个不明白.
   printf ("*%10.3e*\n",RENT);       *3.863e+03*
我可以理解为*          3.852e+03
因为RENT为3852.99  并不是3.863

[[it] 本帖最后由 njbn 于 2008-6-25 15:26 编辑 [/it]]

2008-06-25 15:24
njbn
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2007-4-2
得分:0 
不足的用空格代替是吧

2008-06-25 16:05



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-221163-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.274727 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved