第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

溫度轉(zhuǎn)換的“if-else”或“switch”語句的邏輯問題

溫度轉(zhuǎn)換的“if-else”或“switch”語句的邏輯問題

Qyouu 2022-06-15 16:35:43
我無法解決如何根據(jù)兩個可能的選項獲取輸入并為這兩個選項返回一個值。例子:您使用什么溫度系統(tǒng):攝氏度或華氏度(做出選擇后,在本例中為攝氏度,取答案并轉(zhuǎn)換為華氏度)輸出兩個溫度我試過“if else”和“switch”語句,但是當(dāng)我選擇攝氏度時,它會同時轉(zhuǎn)換System.out.println("Select which temperature scale you currently use, (c)elsius or (f)ahrenheit: ");temperatureScale = scannerIn.next();System.out.println("Temp in C is: " + temperatureInC);     */if (temperatureScale.equals("c")) {System.out.println("Please enter the temperature in Celsius: ");temperatureInC = scannerIn.nextDouble();}else {System.out.println("Please enter the temperature in Fahrenheit: ");temperatureInF = scannerIn.nextDouble();}tempInCelsiusConvFromFahrenheit = (temperatureInF - 32) * 5/9;tempInFahrenheitConvFromCelsius = (temperatureInC * 9/5) + 32;averageQuizScore = ((quiz1 + quiz2 + quiz3)/3);System.out.println("*** Thank You ***");System.out.println("Student EMPLID:" + studentID);System.out.println("Quiz 1 Score: " + quiz1);System.out.println("Quiz 2 Score: " + quiz2);System.out.println("Quiz 3 Score: " + quiz3);System.out.println("Average quiz score: " + df2.format(averageQuizScore));System.out.println("Age in months: " + age * 12);System.out.println("Age in years: " + age);System.out.println("Temperature in Celsius: " +   tempInCelsiusConvFromFahrenheit + '°'); System.out.println("Temperature is Fahrenheit: " + tempInFahrenheitConvFromCelsius + '°');}}我選擇攝氏度并輸入 32。我以為我會得到 32 C 和 91.4 但我得到: 攝氏溫度:-17.77777777777778° 溫度是華氏溫度:91.4°
查看完整描述

2 回答

?
一只斗牛犬

TA貢獻(xiàn)1784條經(jīng)驗 獲得超2個贊

如果你跟蹤你的程序,你會明白:


1)您為攝氏度輸入一個值,因此您的程序?qū)儆冢?/p>


if (temperatureScale.equals("c")) {

    System.out.println("Please enter the temperature in Celsius: ");

    temperatureInC = scannerIn.nextDouble();

}

然后您嘗試通過以下方式顯示以攝氏度為單位的溫度值:


System.out.println("Temperature in Celsius: " +   tempInCelsiusConvFromFahrenheit + '°');

并且您嘗試通過獲取tempInCelsiusConvFromFahrenheit 變量的值來做到這一點。


但是,您嘗試tempInCelsiusConvFromFahrenheit用一個值填充變量


tempInCelsiusConvFromFahrenheit = (temperatureInF - 32) * 5/9;

并且您嘗試在從未進(jìn)入過的“其他塊”中獲取此值:


else {

     System.out.println("Please enter the temperature in Fahrenheit: ");

     temperatureInF = scannerIn.nextDouble();

}

但你永遠(yuǎn)不會進(jìn)入那里。所以當(dāng)你聲明它時它可能被初始化為0。(0-32)*5/9 = -17.78°C。所以輸出是正確的。


但是您的編碼設(shè)計是錯誤的。


我希望這有幫助。


查看完整回答
反對 回復(fù) 2022-06-15
?
侃侃爾雅

TA貢獻(xiàn)1801條經(jīng)驗 獲得超16個贊

你的計算是正確的。如果用戶輸入攝氏度,請不要轉(zhuǎn)換它。換句話說,攝氏溫度是 tempuratureInC 而不是 tempInCelsiusConvFromFahrenheit。



查看完整回答
反對 回復(fù) 2022-06-15
  • 2 回答
  • 0 關(guān)注
  • 291 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號