Online Compiler C

#include <stdio.h> int main() { char c; while ((c=getchar())!='\n'){ if( c=='a'||c=='e'||c=='i'||c=='o'||c=='u'||c=='y') {}; else putchar(c); } printf("\n"); return 0; }
这段代码的功能是:从输入中读取一行字符,遇到换行符停止,然后输出其中所有非元音字母(a、e、i、o、u、y)的字符。

- 注意 `getchar()` 的返回值类型是 `int`,不是 `char`。用 `char` 类型变量接收可能无法正确判断文件结束符 `EOF`,导致在某些情况下循环条件判断出错。
- 当字符是元音时,你写了一个空的花括号 `{}`,这虽然语法正确,但更常见的写法是直接使用 `continue` 跳过本次循环,或者用 `if` 条件判断非元音时输出,这样代码逻辑更清晰。