#include "math.h"
#define MAX 100
//將num的每壹位數字存儲到數組arr中(逆序),arr[0]表示數字的個數
void Init(long num, int arr[])
{
arr[0] = 0;
while(num)
{
arr[++arr[0]] = num % 10;
num /= 10;
}
}
//統計數組arr中每個元素之和
int Summary(int arr[])
{
int i, sum;
for(i=1,sum=0; i<=arr[0]; i++)
{
sum += arr[i];
}
return sum;
}
void main()
{
long x;
int arr[MAX];
int sum;
do
{
cout<<"請輸入壹個正整數 : ";
cin>>x;
}while(x<0 || x>pow(2, 109));
Init(x, arr);
sum = Summary(arr);
cout<<x<<"的各位數字之和為"<<sum<<endl;
}