/*
*程序的版权和版本声明部分:
*Copyright(c)2013,烟台大学计算机学院学生
*All rights reserved.
*文件名称:
*作者:田成琳
*完成日期:2013年 10月27 日
*版本号:v1.0
*对任务及求解方法的描述部分:
*输入描述: a,b,c的值
*问题描述: 求以下三数的和,保留2位小数 1~a之和 1~b的平方和 1~c的倒数和。
*程序输出: 1+2+...+a + 1^2+2^2+...+b^2 + 1/1+1/2+...+1/c
*问题分析:
*算法设计:
*/
我的程序:
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int a,b,c,n;
float y1=0,y2=0,y3=0,sum=0;
cin>>a>>b>>c;
for(n=1;n<=a;n++)
{
y1+=n;
}
for(n=1;n<=b;n++)
{
y2+=n*n;
}
for(n=1;n<=c;n++)
{
y3+= 1.0/n; //这个地方是这个题结果对错的关键点。我就被这给坑了,给了一个大大的教训!!
}
sum=y1+y2+y3;
cout<<setiosflags(ios::fixed)<<setprecision(2)<<sum<<endl;
return 0;
}
运行结果:
心得体会:这个题给上了一课,两整形数相除不会有小数出现。另外输出小数点的问题也比较重要,要记下那一长串字符。。。。