int main()
{
double num = 12345678987; //要求的数字
double q_s = 1; //权数
int k = 0; //位数
double n = num;
while( n >= 10 )
{
n /= 10;
q_s *=10;
k++;
}
k+=1;
cout<
long* pwen = NULL; //保存各位数字的数组
pwen = new long[k];
n = num;
while(--k>=0)
{
pwen[k] = (long)(n/q_s);
n -= pwen[k]*q_s;
q_s /= 10;
cout<
return 0;
};
把求得的结果转换成字符串再保存到数组中就行了
如果是遇到"大数"比如求2的1000次方.则要用另外的算法了.大数算法的类可以在网上去下