解题思路:
C语言都已经不爱刷了,可以来刷刷C++的简单题,本体作为一些基本操作的练习,先将输入的a,b,c反别拆分成三块需要处理的数据,在使用一个double变量将三块数据全部加起来就可以了。
注意C++输出的时候是不能像C语言直接printf("%.2f",balabla)的,你需要先在输出的变量前加入<<setprecision(X)(这个X填小数点后保留几位),才能做到保留小数点后几位,其次,你会发现单单加入这个不够,如果输出20.10000002一个这样的数据并不会按照预想的输出20.10这种数据出来,而是会输出一个20.1这样的数据,因为0会被自动舍去,为了达到强制让其保留2位小数的效果,我们需要在cout前面加一个定义,使用现成的轮子即可:cout.setf(ios::fixed)。这样就可以使其强制保留2位小数了。
参考代码:
#include<bits/stdc++.h>
using namespace std;
int main() {
int a,b,c;
double sum=0.0;
cin>>a>>b>>c;
for(int i=1; i<=a; i++)
sum+=i;
for(int i=1;i<=b;i++)
sum+=pow(i,2);
for(int i=1;i<=c;i++)
sum+=1.0/(double)i;
cout.setf(ios::fixed);
cout<<setprecision(2)<<sum<<endl;
return 0;
}
0.0分
0 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复