问题遇到的现象和发生背景 给定一个正整数,求它的各位数字之和,直到这个和只有一位数为止。
例如,给出整数1236,那么计算
1+2+3+6=12
因为12是一个两位数,所以继续求和
1+2=3
得到结果为:3。
用代码块功能插入代码,请勿粘贴截图 #include <stdio.h>
int digit_sum(int n) {
int b,c=0,d=0,e=0;
while (n!=0)
{ b=n%10;
c+=b;
n/=10;
}if(c%10==0) return c;
else while (c!=0)
{ d=c%10;
e+=d;
c/=10;
} return e;
}int main()
{
int n;
scanf("%d", &n);
printf("%d", digit_sum(n));
return 0;
}