尝试进行计算

Trying to carry out calculations

我是一名初级程序员(刚出生一天),我正在尝试编写能够使用公式 f-32 将摄氏度转换为度数然后显示结果的代码。我遇到了一些麻烦,因为出现的不是显示结果,而是结果。请协助。

import java.util.Scanner;
public class Assignments (
   public static void main(String args[]) {
   Integer Celsius, Faren;
   Scanner Celsius = new Scanner(System.in);
   System.out.prinln(" Enter value in Celsius: ");
   int name = Celsius.nextint();
   Faren = Celsius + 32;
   }
}

这是我在 运行 之后的结果:

我看到你有两个主要问题。首先,正如@Manu 在评论中提到的,您正在尝试使用变量名称 Celcius 两次。这是不允许的,每个变量都应该有一个唯一的名字。尝试将扫描仪重命名为 celciusScanner 或类似名称。

其次,您有一个格式不正确的打印语句(X 摄氏度是 Y 华氏度)。您需要在变量 Faren 和后面的字符串之间加上一个加号。但是我在你的代码中没有看到这一行,我想你一定已经删除了它。

还有一些一般性评论。您的变量名应始终以小写字母开头。以大写字母开头的名称通常保留给 类。坚持这样的约定会让你的代码更容易阅读。我还会研究 int 和 Integer 之间的区别。看起来您有两个定义为 Integer 的变量,但似乎 int 可以完成这项工作。

总的来说,这是一次不错的尝试,这些问题对于初学者来说很常见。

您的代码使用变量 Celsius 作为两种不同的类型。不能同时是 ScannerInteger

尝试这样的事情:

Scanner scanCelsius = new Scanner(System.in);
System.out.prinln(" Enter value in Celsius: ");
int c = scanCelsius.nextint();
int f = c + 32;

顺便说一下,华氏度的转换是错误的。正确的公式是:

Fahrenheit = Celsius * 1.8 + 32

因此你必须使用 float:

float f = (float)c * 1.8 + 32;