Program C untuk Menukar Celsius kepada Fahrenheit
Program C ini bertujuan untuk menukar suhu Celsius kepada Fahrenheit. Walau bagaimanapun, sesetengah pengguna telah menghadapi isu apabila program mengeluarkan 0 secara tidak betul. Artikel ini meneroka sebab di sebalik isu ini dan menyediakan penyelesaian.
Pernyataan Masalah
Pertimbangkan kod C berikut:
<code class="cpp">#include <iostream> using namespace std; int main() { float celsius; float fahrenheit; cout << "Enter Celsius temperature: "; cin >> celsius; fahrenheit = (5/9) * (celsius + 32); cout << "Fahrenheit = " << fahrenheit << endl; return 0; }</code>
Apabila melaksanakan kod ini, sesetengah pengguna mengalami output 0 yang salah.
Penyelesaian
Masalahnya terletak pada pengiraan nilai fahrenheit. Ungkapan (5/9) melakukan pembahagian integer secara lalai, yang menghasilkan 0. Untuk memastikan pembahagian titik terapung, ungkapan harus diubah suai kepada (5.0/9). Berikut ialah kod yang diperbetulkan:
<code class="cpp">#include <iostream> using namespace std; int main() { float celsius; float fahrenheit; cout << "Enter Celsius temperature: "; cin >> celsius; fahrenheit = (5.0/9) * (celsius + 32); cout << "Fahrenheit = " << fahrenheit << endl; return 0; }</code>
Dengan pengubahsuaian ini, atur cara akan mengira dan memaparkan suhu Fahrenheit dengan betul apabila diberikan nilai Celsius.
Atas ialah kandungan terperinci Mengapakah Output Penukar C Celsius ke Fahrenheit Saya 0?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!