C或C++中怎样用链表的每个节点或数组的每个元素存储求阶乘函数的结果的每一位数字?如何

2024-12-26 11:23:44
推荐回答(2个)
回答1:

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< 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:

把求得的结果转换成字符串再保存到数组中就行了

如果是遇到"大数"比如求2的1000次方.则要用另外的算法了.大数算法的类可以在网上去下