Онлайн компилятор C

#include <stdio.h> int main() { int num; scanf("%d",&num); int prev=num%10; while(num>0){ int curr=num%10; if(curr>=prev){ printf("NO"); return 0; } prev=curr; num=num/10; } printf("YES"); return 0; }
这段代码的功能是判断一个整数的各位数字是否严格递减(从低位到高位)。它从最低位开始,依次比较相邻两位数字,如果发现某一位不小于前一位(即不满足递减),就输出"NO"并结束,否则最终输出"YES"。

- 你的代码逻辑是检查从低位到高位是否严格递减,但题目可能要求的是从高位到低位严格递减。注意你取数字的顺序是从个位开始,而比较方向是当前位(低位)与前一位(高位)比较,这实际上检查的是从低位到高位是否严格递增,而不是递减。你需要重新思考比较的方向和初始值设置。
- 另外,当数字只有一位时,你的代码会直接输出"YES",但需要确认这是否符合题目要求。