✏️ 纠错
第 290 题 / 共 301 题
第14题 执行下⾯C++程序,会输出(    )。
📝 题目解析

【答案】 D

【考察知识点】 文件输入输出、字符串提取

【解析】

程序向文件 test.txt 写入两行内容:第一行 "Happy "(含末尾空格)后换行,第二行 "New Year "。

读取时,fin >> s1; 提取第一个单词 "Happy"(跳过前导空白,遇空格停止),指针停在第一行空格处。

随后 getline(fin, s2); 从当前空格开始读取,遇到紧随其后的换行符停止,s2 为空格 " "。

输出 s1 << " | " << s2 即为 "Happy | "(| 后有一个空格)。

A:s2 错误包含 "New Year",实际上 getline 只读第一行剩余部分。

B:同样错误包含 "New Year"。

C:拼接顺序错误。