使用用户输入摄氏度到华氏度循环

时间:2015-02-10 22:44:25

标签: java

我需要创建一个程序,输出一个格式化的两列列表,将Celsius转换为Fahrenheit,结束于与用户输入的起始温度成40度的温度。它应该看起来像这样:(除非它从用户输入的任何数字中计算出来)

Conversion Chart

我已经在这工作了几个小时,我不知道如何解决它。不仅摄氏度从1开始(我认为(cel = 1;)位),但我不知道为什么华氏温度计算不正确。

这是我目前的来源:

import java.util.Scanner;

public class TempTable {
    public static void main(String[] args) {
        Scanner kb = new Scanner(System.in);
        float cel;
        double column;
        double Fahrenheit;
        final double C_2_F = (9.0 / 5.0);
        System.out.println("Enter your city's temperature in Celsius.");
        cel = kb.nextFloat();
        System.out.println("Here is the conversion from " + cel);
        System.out.printf("%2s%12s%n", "Celcius", "Fahrenheit");
        for (cel = 1; cel <= 10; cel++) {
            column = cel;
            for (Fahrenheit = 1; Fahrenheit <= 10; Fahrenheit++) {
                Fahrenheit = cel * C_2_F + 32;
                System.out.printf("%2.0f%12.0f%n", cel, Fahrenheit);
            }
        }
        kb.close();
    }
}

1 个答案:

答案 0 :(得分:0)

修复你的循环以不重置&#39;华氏温度&#39;每一次都通过。

for ( Fahrenheit = 1; Fahrenheit <=10; Fahrenheit++) { 
    Fahrenheit = cel * C_2_F + 32;
    System.out.printf("%2.0f%12.0f%n",cel,Fahrenheit);
}

for ( Fahrenheit = 1; Fahrenheit <=10; Fahrenheit++) { 
    double f = cel * C_2_F + 32;
    System.out.printf("%2.0f%12.0f%n",cel,f);
}

将是一种方式。同时重命名华氏&#39;华氏温度&#39;到华氏温度&#39;华氏温度&#39;

实际上,这只是一个问题。自从&#39; cel&#39;以来,它将打印10次相同的值。和&#39; C_2_F&#39;在循环中不要改变......