注意,这道题是大数的问题。题目要你求的就是一个很大的数字各个位上的数字相加,直到加到个位数为止,这个个位数就是题目要求的根。下面是代码。
#include <stdio.h>
#define wbx 10000000000
char a[wbx];
#include <string.h>
int main()
{
while(scanf("%s",a)!=EOF &&a[0]-'0'!=0)
{
int i,l,sum,sum1;
sum=sum1=0;
l=strlen(a);
for(i=0;i<l;i++)
sum+=a[i]-'0';
if(sum<10)
printf("%d\n",sum);
else
while(sum>=10)
{
sum1+=sum%10;
sum/=10;
if(sum<10)
{
sum+=sum1;
sum1=0;
}
if(sum<10)
printf("%d\n",sum);
}
}
return 0;
}