梅兰妮简介:怎样用C++语言输出20位以上的数字

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/30 15:54:30
我写的简单程序是这样的
#include<iostream>
using namespace std;

void main()
{
int i;
double nu=1;
for(i=0;i<=66;i++)
{
nu=nu*2;
cout<<i<<endl;//查看执行次数的,没什么用
}
cout<<nu<<endl;
}
可是输出的却是科学计数的表示1.47574e+020
我想要的是这个结果14573952589676412928
不知道那位高手可以指点一下。
举个例子具体说一下阿

结果是147573952589676412928吧,这个数超过了long double表示精度的上限,也超过了unsigned long long 的上限,
用高精乘吧,

已经超范围了!只能使用浮点型要想得到那个结果就要自己从些个数据类型!或改进算法

可以转换成字符一位一位输出