Online Compiler C

#include <stdio.h> char F(char ch) { if (ch >= '0' && ch <= '8') { ch = ch + 1; } return ch; } int main() { char ch; while (scanf("%c", &ch) == 1 && ch != '.') { printf("%c", F(ch)); } return 0; }
1) 这段代码实现了一个简单的字符转换功能:当输入的字符是数字'0'到'8'时,将其转换为下一个数字字符(如'0'变'1'),其他字符保持不变。程序持续读取输入字符直到遇到'.'为止。

2) 提示:
- 注意观察函数F()中的条件判断范围,为什么只到'8'而不是'9'?
- 思考while循环中的两个条件分别控制什么?特别是ch != '.'的作用是什么?