注意,這道題是大數的問題。題目要你求的就是一個很大的數字各個位上的數字相加,直到加到個位數為止,這個個位數就是題目要求的根。下面是代碼。
#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;
}