1011:甲流疫情死亡率
時間限制: 1000 ms 記憶體限制: 65536 KB
【題目描述】
甲流并不可怕,在中國,它的死亡率并不是很高。請根據截止2009年12月22日各省報告的甲流确診數和死亡數,計算甲流在各省的死亡率。
【輸入】
輸入僅一行,有兩個整數,第一個為确診數,第二個為死亡數。
【輸出】
輸出僅一行,甲流死亡率,以百分數形式輸出,精确到小數點後3位。
【輸入樣例】
10433 60
【輸出樣例】
0.575%
說明:
主要考查怎麼把數學問題應用在程式設計上。
思路分析:
可以說,這算是一個數學百分比問題,主要求【死亡數】占【确診數】的百分比。
可以了解為【确診數】是總數,而【死亡數】是總數中的一部分。那麼:
【死亡率】=【死亡數】÷【确診數】
如何轉為百分數?我們知道
1÷100=0.01,也表示1占了100的0.01,也就是1%。
其實就是把0.01×100,再加上一個百分号%,就等于1%,是以0.01=1%
同理50÷100=0.5,也等于50%
那麼,在寫代碼時,把結果乘以100,再加一個百分号%即可。
注意:C/C++是沒有百分數的寫法。
求解過程:
聲明2變量a和b。
輸入變量值給a和b。
根據要求輸出它們的結果。
重點:
本題的難點是百分号的用法。
參考代碼 - C++:
代碼說明:
100.0*b/a,因為b和a都是整數,如果直接相除其結果也是整數,除了強制類型轉換為double類型外,還可以把整數100變為浮點數100.0,這樣其結果也是浮點數。
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int a, b;
cin >> a >> b;
cout << fixed << setprecision(3);
cout << 100.0 * b / a << '%';
return 0;
}
參考代碼 - C語言:
代碼說明:
C語言printf函數輸出百分号的方法是寫兩個%
#include <stdio.h>
int main()
{
int a, b;
scanf("%d %d", &a, &b);
printf("%.3f%%", 100.0 * b / a);
return 0;
}