1

sumテストケースで桁数を見つけようとしています。しかし、問題は 1 つを見つけた後ですsum。これsumは次の数字に追加されますが、その数字の数字のsum特定の 1 つだけです。sum助けてください。これが私のコードです:


#include <stdio.h>

int main() {
    int t, n, i, r, sum=0;
    scanf("%d", &t);

    for(i=0; i<t; i++) {
        scanf("%d", &n);
        while(n>0) {
            r = n % 10;
            sum = sum + r;
            n = n / 10;
        }
        printf("%d\n", sum);
    }

    return 0;
}


そして、ここに私の出力があります:

3
1234
10
2347
26
8744
49

なぜ私の前sumに次へ追加するのsumですか?分かりません。

私の望む出力:

3
1234
10
2347
16
8744
23

4

3 に答える 3