每日一题|第一期第一集
2025-08-04 08:19:59
发布于:福建
本人会有刘期每日一题和三期C++算法和语法讲解:规划表如下
第几期 | 分类 |
---|---|
第一期 | acgo里的语法题 |
第二期 | acgo里的算法题 |
第三期 | acgo里的数据结构的题 |
第四期 | 洛谷里的语法题 |
第五期 | 洛谷里的算法题 |
第六期 | 洛谷里的数据结构题 |
附件第七期 | C++语法整合 |
附件第八期 | C++算法整合 |
附件第九期 | C++数据结构整合 |
好了,我在讲几句
作者的声明📢:本文为自己创造,没有用AI
开始:蒙眼抽题目:抽到了A431.输出平均分
题目简介📒:
来源:官方
通过率:53.58%
难度:入门
考点:格式化输入输出
题目的理解📃:
已知信息:全班有30个人,总分有2876分
求解信息:全班的平均分是多少(要保留2位小数)
隐藏信息:平均数求解公式:总数÷个数=平均值
考点🖋:
考点一:格式化输入输出
保留多位小数有两种方法:
number1:运用iomanip中的setprecision解决
//语法:保留n的m位小数
cout << fixed << setprecision(m) << 变量名;
number2:使用cstdio中的printf
//保留m位小数
printf(“%.保留位数lf”,变量名);
考点二:变量的定义和赋值
我们知道变量有以下几个类型
int 整型
long long 超长整型
double 双精度小数
float 单精度小数
bool 布尔
可以定义完再赋值
int a;
a = 3;
也可以边定义边赋值
int a = 3;
分析📡:
方法一:
step1:我们可以定义一个变量为avg_score用来存储平均分的结果(注意:最好定义为double,因为你不知道这个得数有几位)
double avg_score;
step2:然后给avg_score赋值为2876/30.0:
//doble avg_score;
//avg_score = 2876 / 30.0
double avg_score = 2876 / 30.0;
Q:为什么是除以30.0而不是除以30
A:这是一个精度问题,如果你直接除以30.0是这个小数的得数向下取整一下再输出的,这样一来就会的到WA,但是除数或者被除数中的一个是小数时,结果就不会是整数了
step3:输出处理
cout << fixed << setprecision(2) << avg_score;//一号版本
printf("%.2lf",avg_score);//二号版本
Code代码⌨:
setprecision版本:
#include <iostream>//导入输入输出的库
#include <iomanip>//导入setprecision的库
using namespace std;//使用这个库
int main(){
double avg_score = 2876 / 30.0;//定义并赋值
cout << fixed << setprecision(2) << avg_score;//保留两位小数并输出
return 0;//结束这个程序
}
printf版本
#include <cstdio>//导入C语言库(其实是printf和scanf的库)scanf:C语言中的输入
using namespace std;//使用这个库
int main() {
double avg_score = 2876 / 30.0;//定义并赋值
printf("%.2lf",avg_score);//保留两位小数并输出平均值
return 0;//结束程序
}
创作不易,给一个赞吧,求求了
这里空空如也
有帮助,赞一个