余晖~ 2022-01-18 19:40 采纳率: 90.3%
浏览 14
已结题

一道温度转换的题在输出格式上错了,不知道怎么弄

问题遇到的现象和发生背景

输出格式:
第一行输出以下内容,中间有一个空格。

fahr celsius
接着每行输出一个华氏温度fahr(整型,占据4个字符宽度,靠右对齐)与一个摄氏温度celsius(实型,占据6个字符宽度,靠右对齐,保留1位小数)。

问题相关代码,请勿粘贴截图
        printf("fahr celsius\n");
        double cel;
        int fah = lower;
        while( fah <= upper )
        {
            cel = (double)5*(fah-32)/9;
            printf("\t%d\t%.1f\n",fah,cel);    //就是这里,不会按照题目要求的格式输出
            fah ++;
        }

运行结果及报错内容

输出格式不对

我的解答思路和尝试过的方法

用制表符好像不行

我想要达到的结果

输出示例
fahr celsius
31 -0.6
32 0.0
33 0.6

  • 写回答

1条回答 默认 最新

  • _GX_ 2022-01-18 19:55
    关注

    输出那行改为

    printf("%4d%6.1lf\n", fah, cel);
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 1月26日
  • 已采纳回答 1月18日
  • 创建了问题 1月18日