発展課題2
ほかにもたくさんやりかたあります
説明
N = 849259のとき
nauの値を
849259
84925
8492
849
84
8
とfor文で変更していき、各値を10で割ったあまりをsumに加えていく解法。
#include <stdio.h> int main() { int N; printf("Please input an integer N : "); scanf("%d",&N); int sum = N % 10,nau = N / 10; for(;nau != 0;nau /= 10){ sum += nau % 10; } printf("Sum of each digit : %d\n",sum); return 0; }
2017/04/25 追記
こっちのほうが素直なやり方かもしれない。(上のプログラムのfor文は若干くどい感あった。)
#include <stdio.h> int main() { int N; printf("Please input an integer N : "); scanf("%d",&N); int div = 10,sum = N % 10; while(N / div != 0){ sum += (N / div)%10; div *= 10; } printf("Sum of each digit : %d\n",sum); return 0; }