目录
C/C++新冠疫情死亡率
一、题目要求
1、编程实现
2、输入输出
二、算法分析
三、程序编写
四、程序说明
五、运行结果
六、考点分析
C/C++新冠疫情死亡率
2020年9月 C/C++编程等级考试一级编程题
一、题目要求
1、编程实现
2020年全世界爆发了新冠疫情,请根据某个国家报告的新冠确诊数和死亡数,计算新冠疫情在该国的死亡率。
时间限制:10000
内存限制:65536
2、输入输出
输入描述:输入仅一行,有两个整数,第一个为确诊数,第二个为死亡数。
输出描述:输出仅一行,新冠死亡率,以百分数形式输出,精确到小数点后3位。
输入样例:
10433 60
输出样例:
0.575%
二、算法分析
- 从给定题目的初步分析可以看出,首先需要从键盘获取2个整数
- 可以使用int类型进行变量的声明,用来保存键盘输入的数据
- 然后需要计算死亡率,需要用到除法(/),但是在C++中除号两边如果都是整数只会返回整数商,显然不符合题意,需要将其中一个数先转化成小数才可以,可以使用强制类型转化或者通过将其中一个数乘以1.0;接着乘以100,因为是百分比所以结果要乘以100。
- 然后输出的时候使用iomanip头文件里面的fixed和precision函数控制小数位数
三、程序编写
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int a,b;
cin>>a>>b;
cout<<fixed<<setprecision(3)<<1.0*b/a*100<<"%";
return 0;
}
四、程序说明
- 根据题目要求声明2个整形int变量
- 然后利用输入流对象cin,从键盘读取2个变量的值
- 接着利用乘除法计算出对应的百分比数值
- 最后利用输出流对象cout,结合小数位控制函数fixed和setprecision函数进行输出即可
五、运行结果
10433 60
0.575%
六、考点分析
难度级别:容易,这题相对而言还是比较简单的,具体主要考查如下:
- 分析题目,找到解题思路
- 变量的声明和使用
- 输入流对象cin的使用,与流提取运算符 >>结合使用从键盘读取想要的数据
- setprecision函数的使用,控制输出流显示浮点数的有效数字位数
- fixed与setprecision函数结合使用是保留小数点后的位数,小数点的保留采用四舍五入
- 输出流对象cout的使用,与流插入运算符 << 结合使用将对象输出到终端显示
- 充分掌握变量定义、小数控制和简单算法知识的使用及输入输出的用法
PS:方式方法有多种,小朋友们只要能够达到题目要求即可!