c++初学者 关於 平方平方根(保留两位小数)的问题

#include<iostream>#include<iomanip>usingnamespacestd;voidsquare(doublek);intmain(){in... #include <iostream>
#include <iomanip>
using namespace std;
void square(double k);
int main()
{
int n;

cout<<"enter a number:";
cin>>n;
square(n)

system("pause");
return 0;
}

void square(int k)
{

double l=pow(k,0.5);
double j=l*l;
cout<<setprecision(2)<<"square"<<l<<"square root"<<j<<endl;

}

输入一个数 然后计算他的平方根并4舍五入保留两位小数,,然后平方根的平方得到原来的数 也是四舍五入保留两位小数。。

比如123456 平方根是351.3630601 四舍五入得到351.36。 351.3630601 平方得到123456.00。

我写了一点但是写不下去了 不知道什麽地方出错了,,哪位会的帮帮忙吧
展开
 我来答
besthelp
2008-04-16 · TA获得超过1057个赞
知道小有建树答主
回答量:376
采纳率:100%
帮助的人:392万
展开全部
#include <iostream>
#include <iomanip>
#include <math.h>
using namespace std;
void square(double k);
int main()
{
int n;

cout<<"enter a number:";
cin>>n;
square(n);

system("pause");
return 0;
}

void square(double k)
{

double l=/*pow(k,0.5);*/ sqrt(k);
double j=l*l;
cout <<setiosflags(ios::fixed); /*setprecision(n)与setiosflags(ios::fixed)合用,可以控制小数点右边的数字个数。setiosflags(ios::fixed)是用定点方式表示实数。*/
cout<<setprecision(2)<<"square:"<<l<<"square root:"<<j<<endl;

}

输出结果:
enter a number:123456
square:351.36square root:123456.00
L_o_o_n_i_e
2008-04-16 · TA获得超过4.2万个赞
知道大有可为答主
回答量:8507
采纳率:38%
帮助的人:5275万
展开全部
void square(double k) // 改用double
{
double l,j;
l =pow(k,0.5); // 或 l = sqrt(k); 头文件 #include <math.h>
j=l*l;
。。。。
}

调用
cin>>n;
square(n); // 漏了分号

保留2位小数的方法:
(double) ( (int)(l * 100.0) ) / 100.0
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友fd133c31d
2008-04-16 · TA获得超过226个赞
知道小有建树答主
回答量:404
采纳率:0%
帮助的人:329万
展开全部
只要得出的数取小数点后3位,得出的另一个数乘1000,若个位上的数大于5的话就加10除1000,输出的数取前两位。算法就是这样了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式