ZOJ Problem Set - 1115
Digital Roots
#include<stdio.h>
#include<string.h>
char num[1000];
int main(void)
{
int n, len, i;
while (scanf("%s", num) && num[0]!='0')
{
len = strlen(num);
for (i = 0, n = 0; i<len; ++i)
n += num[i] - '0';
while (n > 9)
if (n % 9 == 0)
{ n = 9; break; }
else n %= 9;
printf("%d\n", n );
}
return 0;
}