4 changed files with 56 additions and 0 deletions
Binary file not shown.
@ -0,0 +1,11 @@ |
|||
# 第1周作业:温度转换工具 |
|||
|
|||
## 文件清单 |
|||
- `TemperatureConverter.java`:摄氏/华氏温度转换核心程序 |
|||
- `Helloworld.java`:基础 HelloWorld 示例 |
|||
- `README.md`:编译与运行说明 |
|||
|
|||
## 编译命令 |
|||
打开终端,进入代码所在目录,执行: |
|||
```bash |
|||
javac TemperatureConverter.java Helloworld.java |
|||
Binary file not shown.
@ -0,0 +1,45 @@ |
|||
import java.util.Scanner; |
|||
|
|||
// 温度转换:摄氏(C) ↔ 华氏(F)
|
|||
public class TemperatureConverter { |
|||
public static void main(String[] args) { |
|||
Scanner scanner = new Scanner(System.in); |
|||
System.out.print("请输入带有符号的温度值: "); |
|||
String input = scanner.nextLine(); |
|||
scanner.close(); |
|||
|
|||
// 空输入直接报错
|
|||
if (input.length() < 2) { |
|||
System.out.println("输入格式错误"); |
|||
return; |
|||
} |
|||
|
|||
// 取最后一位为单位,前面为数值字符串
|
|||
char unit = input.charAt(input.length() - 1); |
|||
String numStr = input.substring(0, input.length() - 1); |
|||
|
|||
try { |
|||
double num = Double.parseDouble(numStr); |
|||
double result; |
|||
char resUnit; |
|||
|
|||
if (unit == 'C' || unit == 'c') { |
|||
// 摄氏 → 华氏
|
|||
result = 1.8 * num + 32; |
|||
resUnit = 'F'; |
|||
} else if (unit == 'F' || unit == 'f') { |
|||
// 华氏 → 摄氏
|
|||
result = (num - 32) / 1.8; |
|||
resUnit = 'C'; |
|||
} else { |
|||
System.out.println("输入格式错误"); |
|||
return; |
|||
} |
|||
|
|||
// 输出保留两位小数
|
|||
System.out.printf("转换后的温度是%.2f%c%n", result, resUnit); |
|||
} catch (NumberFormatException e) { |
|||
System.out.println("输入格式错误"); |
|||
} |
|||
} |
|||
} |
|||
Loading…
Reference in new issue