题意 + 思路:将一个多位数,各个数字相加,如果相加后还是多位数的话,再次将各个位置上的数相加,直到相加后的数为个位数
#include<stdio.h>
#include<string.h>
int chang(int n) {
int m = 0;
while (n != 0) {
m += n % 10;
n = n / 10;
}
return m;
}
int main() {
char str[1000];
while(scanf("%s", str) != EOF) {
if (strcmp(str, "0") == 0)
break;
int len = strlen(str), sum = 0;
for(int i = 0; i < len; i++)
sum += str[i] - '0';
while(sum > 9)
sum = chang(sum);
printf("%d\n",sum);
}
}