求一个整数的位数并将各个位上的数字储存到一个数组中

来源:互联网 发布:美国债券市场数据 编辑:程序博客网 时间:2024/04/29 19:58
//求一个整数的位数并将各个位上的数字储存到一个数组中

#include 
<iostream>
using namespace std;

//计算一个整数的位数
int countNum(int n)
{
    
int nNum = 0;
    
while (n>0)
    
{
        nNum
++;
        n 
= n/10;
    }

    
return nNum;
}


//将各个位上的数字储存到数组中
void saveNum(int n, int *p)
{
    
int nTemp;
    
int *pTemp = p;
    
while (n>0)
    
{
        nTemp 
= n;
        n 
= n/10;
        
*(pTemp++= nTemp - n*10;
    }

}


int main(void)
{
    
int n = 123456;
    
int nNum;
    
int i;
    nNum 
= countNum(n);
    cout
<<nNum<<endl;
    
int *= new int[nNum];
    saveNum(n, p);
    
for (i=0; i<nNum; i++//倒序输出
    {
        cout
<<*(p+i)<<" ";
    }

    cout
<<endl;
    
for (i=nNum-1; i>=0; i--//顺序输出
    {
        cout
<<*(p+i)<<" ";
    }

    cout
<<endl;
    cin.
get();
    delete []p;
    
return 0;
}
 
原创粉丝点击