http://acm.hdu.edu.cn/showproblem.php?pid=1013
题意:求各个数位的和,如果大于9,继续处理
#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<bitset>
#include<stdlib.h>
using namespace std;
int main()
{
char str[ 1005 ] ;
int len , ans , sum ;
while( ~scanf( "%s" , str ) )
{
if( str[ 0 ] == '0' )
break ;
len = strlen( str ) ;
sum = 0 ;
while( len-- )
{
sum += str[ len ] - '0' ;
}
while( sum > 9 )
{
ans = 0 ;
while( sum )
{
ans += sum % 10 ;
sum /= 10 ;
}
sum = ans ;
}
cout << sum << endl ;
}
return 0 ;
}