XTU-OJ 《C语言程序设计》 1055-整数分类

Description

按照下面方法对整数x进行分类:如果x是一个个位数,则x属于x类;否则将x的各位上的数码累加,得到一个新的x,依次迭代,可以得到x的所属类。比如说24,2+4=6,则24的类别数是6;39,3+9=12,1+2=3,则39的类别数是3。

输入

       每行输入一个非负整数n,n≤10500,n为0时结束。

输出

       每行输出对应整数的分类数。

Sample Input

24
39
0

Sample Output

6
3

Source

ericxie

解题思路:

AC代码:

#include 
#include 
#include 

int main()
{
    int len,num,t;
    char str[520];
    while (scanf("%s",str) != EOF && str[0] != '0') 
    {
        len = strlen(str);
        while ( len > 1) 
        {
            num = 0;
            for (int i = 0; i < len; i ++) 
            {
                t = str[i] - '0';
                num += t;
            }
            itoa(num,str,10);
            len = strlen(str);
        }
        printf("%c\n",str[0]);
    }
    return 0;
}

你可能感兴趣的:(湘大OJ练习解析,c语言,算法,开发语言)