问题标题: 酷町堂:2684

0
0
已解决
刘雨沐
刘雨沐
新手光能
新手光能

2684   接力

题目描述 Description

小新正在陪小华玩一个游戏,他们从一个整数开始,比如:6593,将这个整数中的各位数字全部取出,将他们相乘,得到一个新的整数,上面的例子就是6 * 5 * 9 * 3=810,然后继续做下去,8 * 1 * 0=0得到一个个位数0.但是现在小新还有很多作业没有写,不能陪小华玩了,于是他希望能写出一个程序,帮助他完成这个游戏,读入一个数并计算出游戏得到一个个位数的过程。

输入描述 Input Description

一个整数N(10<=n<=2,000,000,000)

输出描述 Output Description

在单独的一行中按顺序输出游戏过程中产生的每一个数直到一个个位数结束,相邻两个数之间用空格隔开

样例输入 Sample Input

 

98886

样例输出 Sample Output

 

98886 27648 2688 768 336 54 20 0


0
已采纳
王光裕
王光裕
资深光能
资深光能

用字符串

    long long m;
    char a[1000];
    int i;
    gets(a);//读入字符串a 
    cout<<a<<" ";
    while(a[0]!=0&&a[1]!=0)
    {
        m=1;
        for(i=0; a[i]!=0; i++)
        {
            如果(a[i]>='0' && a[i]<='9')
                m*=a[i]-'0';
        }
        sprintf(a,"%ld",m);//为下一次做准备 
        cout<<a<<" ";
    }
0
0
余天泽
余天泽
中级光能
中级光能

11111111111111111111111111111111111111111111111111111111

11111111111111111111111111111111111111111111111111111111

11111111111111111111111111111111111111111111111111111111

11111111111111111111111111111111111111111111111111111111

1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111

 

 

 

 

 

 

 

 

1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111

11111111111111111111111111111111111111111111111111111111

0
0
0
0
我要回答