这段代码的功能是判断一个整数各位数字是否从左到右严格递减。它从右向左检查相邻两位,如果发现某一位不小于右边一位,就输出NO并结束。 - 你的循环条件 `while (n>9)` 只处理至少两位数的数字,但循环内部每次只比较最后两位,然后去掉最后一位。这样只能检查相邻的两位,但无法保证所有位都满足递减关系。例如输入 321,第一次比较 1 和 2 时,2>=1 成立,会输出 NO,但实际 321 是递减的。 - 你的比较逻辑 `digit2>=digit1` 是在检查左边数字是否大于等于右边数字,但题目要求的是严格递减,所以左边应该大于右边。这里条件写反了,导致正确递减的数字也会被判为NO。