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

#include <stdio.h> int main() { int a,b,c; scanf("%d%d%d",a,b,c) if(a < b < c) printf("YES"); else"NO"; return 0; }
这段代码试图判断三个整数是否严格递增(a < b < c),但存在几个语法和逻辑错误。

- 第5行:`scanf` 缺少取地址符 `&`,并且末尾缺少分号。
- 第6行:`if(a < b < c)` 在C语言中不会按数学方式比较,它会先计算 `a < b` 得到0或1,再与 `c` 比较,导致逻辑错误。
- 第8行:`else"NO";` 语法错误,`else` 后面应该跟语句或代码块,不能直接跟字符串字面量。

- 检查 `scanf` 中每个变量前是否都加了 `&`,并且每行语句末尾都有分号。
- 思考如何用两个独立的条件(`a < b` 和 `b < c`)组合起来表达“a小于b且b小于c”。