c++如何让输出结果没有e,而且一个窗口可以反复运算

#include "stdafx.h"
#include<iostream>
#include<cmath>
using namespace std;

int main()
{
double x,y;
cout << "平方" << endl;
cin >>x;
y = pow(2.0, x);
cout << y;
cin.get();

return 0;
}

才学c++几天,想要试一下算平方,但是输出太大会带e,怎么让它直接显示数字是多少,而且一个窗口可以反复运算
而且再继续大的话会有inf,是没有xy定义好吗?

试试这个:
第一部分:
"cout.setf(ios::fixed);" //定点记数法,不使用科学记数法,也就是没有“e”
第二部分:
在 "cin>>x;" 前一行加上个 "for (true) {"
再把 "cout<<y;" 改成 "cout<<y<<endl;"
最后在 "cout<<y<<endl;" 后加上一个 "}" ,以完成for循环
注:for循环的"true"可以改成其他表达式,用于操控循环次数。追问

那这样数据太大会不会出现inf?

追答

当然会

其实你可以用"long double"声明变量,甚至是"unsigned long double"这样数据范围跟大。

温馨提示:答案为网友推荐,仅供参考
相似回答