C/C++计算分数的浮点数值 2019年12月电子学会青少年软件编程(C/C++)等级考试一级真题答案解析

目录

C/C++计算分数的浮点数值

一、题目要求

1、编程实现

2、输入输出

二、解题思路

1、案例分析

三、程序代码

四、程序说明

五、运行结果

六、考点分析


C/C++计算分数的浮点数值

2019年12月 C/C++编程等级考试一级编程题

一、题目要求

1、编程实现

两个整数a和b分别作为分子和分母,既分数 a/b ,求它的浮点数值(双精度浮点数,保留小数点后9位)

2、输入输出

**输入描述:**输入仅一行,包括两个整数a和b(b不为0)

**输出描述:**输出也仅一行,分数 a/b 的浮点数值(双精度浮点数,保留小数点后9位)

输入样例:

5 7

输出样例:

0.714285714

二、解题思路

1、案例分析

  1. 从给定题目的初步分析可以看出,首先需要从键盘获取2个整数
  2. 可以使用int类型进行变量的声明,用来保存键盘输入的数据
  3. 题目要求保留结果是9位小数位,所以需要提前引入iomanip头文件
  4. 然后输出的时候使用iomanip头文件里面的fixed和precision函数控制小数位数
  5. 同时因为在C++中除法(/)如果左右都是整数值返回的结果也是整数,所以需要将其中一个值强制转化为double类型

三、程序代码

cpp 复制代码
#include<iostream> 
#include<iomanip>
using namespace std;
int main()
{
	int a,b;
	cin>>a>>b;
	cout<<fixed<<setprecision(9)<<(double)a/b;
	return 0;
}

四、程序说明

  1. 根据题目要求声明2个整形int变量
  2. 然后利用输入流对象cin,从键盘读取三个变量的值
  3. 最后利用输出流对象cout,并结合fixed和setprecision结合使用输出分数的值

五、运行结果

cpp 复制代码
5 7

0.714285714

六、考点分析

难度级别:容易,这题相对而言还是比较简单的,具体主要考查如下:

  1. 分析题目,找到解题思路
  2. 变量的声明和使用
  3. 输入流对象cin的使用,与流提取运算符 >>结合使用从键盘读取想要的数据
  4. C++除法的使用,如果两边都是整数返回结果为整数,要变成小数需要将两边至少一个强制转化为浮点数才可以
  5. setprecision函数的使用,控制输出流显示浮点数的有效数字位数
  6. fixed与setprecision函数结合使用是保留小数点后的位数,小数点的保留采用四舍五入
  7. f输出流对象cout的使用,与流插入运算符 << 结合使用将对象输出到终端显示
  8. 充分掌握变量定义和使用、小数的控制和除号知识的使用及输入输出的用法

PS:方式方法有多种,小朋友们只要能够达到题目要求即可!

相关推荐
郝学胜-神的一滴几秒前
[简化版 GAMES 101] 计算机图形学 13:从光栅化到着色——赋予三维像素光影灵魂
c++·计算机视觉·unity·godot·图形渲染·opengl·unreal
无限码力2 分钟前
华为非AI方向0612笔试真题-循环异或加密器(详细思路+多语言题解)
算法·华为·华为非ai方向笔试真题·华为笔试真题·华为0612笔试真题
凌波粒4 分钟前
LeetCode--1584. 连接所有点的最小费用(最小生成树/Prim算法/Kruskal算法)
算法·leetcode·职场和发展
simidagogogo5 分钟前
生产环境推荐系统最隐蔽的坑:Training-Serving Skew 详解与实战
算法·spark·推荐算法
Shadow(⊙o⊙)12 分钟前
信号2.0,深入信号三张表block pending handlers,core文件的使用,信号执行逻辑:CPU虚拟内存物理内存,时钟源,软中断。
linux·运维·服务器·开发语言·c++
不吃土豆的马铃薯18 分钟前
高并发服务器数据库连接池设计详解
服务器·网络·数据库·c++·mysql
大白话_NOI19 分钟前
【二分答案】附通用模板
c++·算法
Shadow(⊙o⊙)22 分钟前
C++进阶知识3.0
linux·服务器·开发语言·c++
春栀怡铃声22 分钟前
【C++修仙录03】进阶篇:继承
c++
三行数学25 分钟前
数学周刊第23期(2026年06月08日-06月14日)南师数科院万仁辉副教授成果登顶国际数学四大顶刊之一<数学年刊>
算法·数学周刊