已采纳 刘孟博 修练者 用while循环做,已调试AC,望采纳 核心思想: int doit(int x){ int ans=1; while (x>0){ ans=ans*(x%10); x=x/10; } return ans; }//扒皮操作,不懂的话可以尝试写一写理解一下这段 调用时候只要它不是1位数就调用 while (n>10){ n=doit(n); cout<<n<<" "; } } 记得在循环调用之前先输出原数