給定一個華氏溫度F,本題要求編寫程序,計算對應的攝氏溫度C。計算公式:C=5×(F−32)/9。題目保證輸入與輸出均在整型範圍內。
輸入格式:
輸入在一行中給出一個華氏溫度。
輸出格式:
在一行中按照格式「Celsius = C」輸出對應的攝氏溫度C的整數值。
輸入樣例:
150
輸出樣例:
Celsius = 65
二、思路分析本題非常簡單,就是根據公式:C=5×(F−32)/9 計算出對應的攝氏溫度而已。
給出參考代碼之前,先來看看 scanf() 的用法,printf() 函數在之前文章中已做了詳細介紹,若有不解請閱《練習2-4 溫度轉換 (5分)》。
C 庫函數scanf() 從標準輸入 stdin 讀取格式化輸入。它的聲明如下:
int scanf(const char *format, ...)
format -- 這是 C 字符串,包含了以下各項中的一個或多個:空格字符、非空格字符 和 format 說明符。
format 說明符形式為:
[=%[*][width][modifiers]type=]
format 說明符具體講解如下:
參數描述*這是一個可選的星號,表示數據是從流 stream 中讀取的,但是可以被忽視,即它不存儲在對應的參數中width這指定了在當前讀取操作中讀取的最大字符數modifiers為對應的附加參數所指向的數據指定一個不同於整型(針對 d、i 和 n)、無符號整型(針對 o、u 和 x)或浮點型(針對 e、f 和 g)的大小:h :短整型(針對 d、i 和 n),或無符號短整型(針對 o、u 和 x) l :長整型(針對 d、i 和 n),或無符號長整型(針對 o、u 和 x),或雙精度型(針對 e、f 和 g) L :長雙精度型(針對 e、f 和 g)type一個字符,指定了要被讀取的數據類型以及數據讀取方式。具體參見下一個表格scanf 類型說明符:
類型合格的輸入參數的類型%a、%A讀入一個浮點值(僅 C99 有效)float *%c單個字符:讀取下一個字符。如果指定了一個不為 1 的寬度 width,函數會讀取 width 個字符,並通過參數傳遞,把它們存儲在數組中連續位置。在末尾不會追加空字符char *%d十進位整數:數字前面的 + 或 - 號是可選的int *%e、%E、%f、%F、%g、%G浮點數:包含了一個小數點、一個可選的前置符號 + 或 -、一個可選的後置字符 e 或 E,以及一個十進位數字。兩個有效的實例 -732.103 和 7.12e4float *%i讀入十進位,八進位,十六進位整數int *%o八進位整數int *%s字符串。這將讀取連續字符,直到遇到一個空格字符(空格字符可以是空白、換行和制表符)char *%u無符號的十進位整數unsigned int *%x、%X十六進位整數int *%p讀入一個指針以上內容來自:菜鳥教程
三、參考代碼根據以上分析,給出參考代碼如下:
#include<stdio.h>
int main()
{
int c;
scanf("%d\n",&c);
printf("Celsius = %d\n",5*(c-32)/9);
}
四、關於作者作者: C you again,從事軟體開發 努力在IT搬磚路上的技術小白
公眾號: 【C you again】,分享計算機類畢業設計源碼、IT技術文章、遊戲源碼、網頁模板、程序人生等等
關於轉載:歡迎轉載博主文章,轉載時標明出處
求贊環節:創作不易,記得 點讚+評論+轉發 謝謝你一路支持
微信掃碼關注這個有溫度的程序猿