當前位置:編程學習大全網 - 編程軟體 - 編程序:輸入壹個不大於2×109(用long型數據)的正整數x,求這個數每位數字之和

編程序:輸入壹個不大於2×109(用long型數據)的正整數x,求這個數每位數字之和

#include "iostream.h"

#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;

}

  • 上一篇:VFP編程-關於日期顯示的問題
  • 下一篇:國際著名數控系統制造上有哪些?在國內機床行業具有較高知名度的國產數控系統有哪
  • copyright 2024編程學習大全網