第六章第八题(摄氏度和华氏度之间的转换)(Conversions between celsius and fahrenheit)
6.8(摄氏度和华氏度之间的转换)编写一个类,包含下面两个方法:
public static double celsiusToFahrenheit(double celsius)
public static double fahrenheitToCelsius(double fahrenheit)
转换公式如下:
华氏度 = (9.0 / 5)* 摄氏度 + 32
摄氏度 = (5.0 / 9)* (华氏度 - 32)
编写一个测试程序,调用这个两个方法来显示如下表格:
摄氏度 华氏度 华氏度 摄氏度
-----------------------------------------------------------------------
40.0 104.0 120.0 48.89
39.0 102.2 110.0 43.33
......
32.0 89.6 40.0 4.44
31.0 87.8 30.0 -1.11
6.8(Conversions between celsius and fahrenheit)Write a class that contains the following two methods:
public static double celsiusToFahrenheit(double celsius)
public static double fahrenheitToCelsius(double fahrenheit)
The formula for the conversion is:
fahrenheit = (9.0 / 5)* celsius + 32
celsius = (5.0 / 9)* (fahrenheit - 32)
Write a test program that invokes these methods to display the following tables:
celsius fahrenheit fahrenheit celsius
-----------------------------------------------------------------------
40.0 104.0 120.0 48.89
39.0 102.2 110.0 43.33
......
32.0 89.6 40.0 4.44
31.0 87.8 30.0 -1.11
下面是参考答案代码:
public class ConversionClassQuestion8 {
public static void main(String[] args) {
printTableHead();
for(double c = 40,f = 120;c >= 31 && f >= 30;c -= 1,f -= 10)
System.out.printf("%.1f\t\t%.1f\t\t\t%.1f\t\t%.2f\n", c, Conversion.celsiusToFahrenheit(c),
f, Conversion.fahrenheitToCelsius(f));
}
public static void printTableHead() {
System.out.println("Celsius\t\tFahrenheit\t\tFahrenheit\tCelsius");
System.out.println("-----------------------------------------------------------------");
}
}
class Conversion{
public static double celsiusToFahrenheit(double celsius) {
return (9.0 / 5) * celsius + 32;
}
public static double fahrenheitToCelsius(double fahrenheit) {
return (5.0 / 9) * (fahrenheit - 32);
}
}
运行效果:

注:编写程序要养成良好习惯
1.文件名要用英文,具体一点
2.注释要英文
3.变量命名要具体,不要抽象(如:a,b,c等等),形式要驼峰化
4.整体书写风格要统一(不要这里是驼峰,那里是下划线,这里的逻辑段落空三行,那里相同的逻辑段落空5行等等)
5.普通变量,方法名要小驼峰,类名要大驼峰,常量要使用全部大写加上下划线命名法
6.要学习相应的代码编辑器的一些常用快捷键,如:快速对齐等等