会C语言的童鞋们帮帮忙啊~~!

因为我没有上补习班什么的,所以很多不懂的啊,请会的童鞋帮帮忙啊!1、printf("%d4.4f",1.25);输出结果是1.2500printf("%d7.4f",1.... 因为我没有上补习班什么的,所以很多不懂的啊,请会的童鞋帮帮忙啊!
1、printf("%d4.4f",1.25); 输出结果是 1.2500
printf("%d7.4f",1.25); 输出结果是 _1.2500
两个整数中前面那个整数的意思是,指定输出数据占的总宽度。 我不明白这具体是什么意思。而且总么解释那两个例子呢?

2 printf("%%d",254);输出%d
printf("%%%d",254)输出%254
这是为什么呢?

目前没多少财富了哈,我去赚赚。等答案满意我再追加啊,谢谢了!
都很谢谢大家帮忙解释啊~~!!综合大家的解释我已经非常明白了~
可惜只能选一个最佳答案。。向好童鞋敬礼~~~
展开
 我来答
421868436
2010-07-20 · 超过36用户采纳过TA的回答
知道小有建树答主
回答量:161
采纳率:0%
帮助的人:101万
展开全部
楼上的已经回答了第2个问题
我就不再重复了
我补充一下第一个问题吧
printf("%d4.4f",1.25); printf("%d7.4f",1.25);
4(7).4f两个数字的意思:第2个4表示小数点后面要输出4位,这一个4是先起作用的,然后是小数点前面的那个数字表示输出数据的总宽度,加入这个数字小于数据的实际宽度,那么输出的数据格式就是实际的数据宽度,加入这个数字大于数据的实际宽度,那么就要输出这个数字表示的数据位宽,不够的话在左边加上空格。(要注意的是小数点后面的那个数字要先起作用),所以printf("%d4.4f",1.25)输出是1.2500,printf("%d7.4f",1.25); 输出是 1.2500(1前面有个空格),还有 数据位宽是包含小数点在内的
fantacywall
2010-07-20 · TA获得超过333个赞
知道小有建树答主
回答量:329
采纳率:0%
帮助的人:272万
展开全部
C语言的语句编译的时候是从左到右理解的。
"%"是一个特殊字符,代表它后面的字符跟它一起被解释。%d代表输出一个整数,%%代表输出一个"%"字符,这也是输出"%"字符的唯一方法。这样理解的话,"%%d"从左到右,变成%% 和d两部分,输出"%d"。而"%%%d"则分成%%和%d两部分,输出%254。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
chjshen
2010-07-20 · 超过22用户采纳过TA的回答
知道答主
回答量:79
采纳率:0%
帮助的人:67.6万
展开全部
1、我认为你的输出结果肯定不对 ,我vc6实测结果是
04.4f和07.4f
%d后面的4.4f应该原样输出的。
2、要想输出% 这个符号,就是%%来表示,所以
第一个结果是%d
第二个是%254,因为前两个输出了%后面一个则是完整的%d
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2010-07-20
展开全部
printf("%4.4f",1.25);

%4.4f中的小数点后面的4表示输出4位小数,如果实际小数不足4位就补0,小数点之前的4表示输出1.25占用的默认宽度是4(即4个字符位置),如果实际输出的字符(包含小数点在内)不足4个字符,就在左边补空格,否则就按实际情况输出。

printf("%7.4f",1.25);

由于1.25输出四位小数后的情况是1.2500,而这个输出是6个字符,距7个字符的默认输出宽度还差一个字符,所以在左边补一个空格。

printf("%%d",254);

由于%%是百分号%的转义字符,所以%%会输出一个百分号,后面的d不是转义字符,也不是格式控制符,所以原样输出d

printf("%%%d",254)

%%输出一个百分号,后面的%d是整数格式控制符,把后面254按十进制整数形式输出,所以输出是%254

参考资料: YASK

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式