鱼C论坛

 找回密码
 立即注册
查看: 3733|回复: 4

求助 c输出问题

 关闭 [复制链接]
发表于 2011-6-8 17:52:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 soldier 于 2011-6-8 19:24 编辑

结果.png
#include<stdio.h>
void main()
{
        int fahr;
        printf("华氏温度对摄氏温度转换表:\n");
        for(fahr=300;fahr>=0;fahr=fahr-20)
                printf("%3.0d\t\t%6.1f\n",fahr,5.0*(fahr-32)/9.0);
}
最后的0怎么没输出?!把“%3.0d“改成”%3d"怎么就可以了!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-6-8 19:17:35 | 显示全部楼层
类型不匹配:你的%3.0d中是整数,没有小数,所以应用%3d。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-6-9 08:24:17 | 显示全部楼层
那前面的也是整数怎么都输出了呢?!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-6-9 09:04:42 | 显示全部楼层
%m.nd     m控制输出总宽度,n控制有效数字位数
若实际位数超过n位则不变, 否则在前面补0;在看总位数m, 若总位数不足m位,则补空格

你的程序总长度为3, 有效位为0, 从300到20的有效位都大于0, 所以正常输出,小于m,所以两位的前面补空格, 0的有效位是0, 不大于0, 所以按0个有效位输出,就没有输出0.

你可以把有效位改成1。

评分

参与人数 1鱼币 +1 收起 理由
三少爷 + 1 很给力!

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-6-9 17:24:20 | 显示全部楼层
还是c++比较简单啊 = =
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-2-7 08:12

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表