void rec(void) { char c = cin.get(); while (c != '\n') { rec(); cout<<c; } return; } int main() { rec(); return 0; } 输出结果
时间: 2024-04-07 08:29:16 浏览: 83
int main和int main(void)区别
3星 · 编辑精心推荐
这段代码没有任何提示信息,需要用户输入一个字符串后回车结束。假设用户输入的字符串是"Hello, World!",则程序会逐个字符读取并递归调用rec函数。具体执行过程如下:
1. 第一次调用rec函数,读取字符'H',由于不是'\n',继续进入while循环。
2. 第二次调用rec函数,读取字符'e',由于不是'\n',继续进入while循环。
3. 第三次调用rec函数,读取字符'l',由于不是'\n',继续进入while循环。
4. 第四次调用rec函数,读取字符'l',由于不是'\n',继续进入while循环。
5. 第五次调用rec函数,读取字符'o',由于不是'\n',继续进入while循环。
6. 第六次调用rec函数,读取字符',',由于不是'\n',继续进入while循环。
7. 第七次调用rec函数,读取字符' ',由于不是'\n',继续进入while循环。
8. 第八次调用rec函数,读取字符'W',由于不是'\n',继续进入while循环。
9. 第九次调用rec函数,读取字符'o',由于不是'\n',继续进入while循环。
10. 第十次调用rec函数,读取字符'r',由于不是'\n',继续进入while循环。
11. 第十一次调用rec函数,读取字符'l',由于不是'\n',继续进入while循环。
12. 第十二次调用rec函数,读取字符'd',由于不是'\n',继续进入while循环。
13. 第十三次调用rec函数,读取字符'!',由于不是'\n',继续进入while循环。
14. 第十四次调用rec函数,读取字符'\n',由于是'\n',退出while循环。
15. 从第十四次调用rec函数开始依次回溯,并输出字符。输出结果为"!dlroW ,olleH"。
因此,该程序的输出结果为"!dlroW ,olleH"。
阅读全文