C++ 语言中下面可以完成数据输入的语句是( )。
题干只要“输入”二字,立刻锁定“读入”语义:C++ 流式是 cin,C 风格是 scanf,printf 与 cout 都是输出,default 是 switch 的默认分支,直接排除三个输出项,只剩 scanf。
学生常把 printf 和 cout 当成输入,因为名字里都有“printf/cout”这种“输出”字眼,或者看到 default 就以为它是“默认输入”,其实 default 只用在 switch 里做兜底分支,跟输入毫无关系。还有把 cin 和 scanf 搞混,cin 是流式输入,scanf 是 C 风格输入,两者都能读数据,但题目只给了 scanf 这一个正确选项,其他都是输出或无关。
【考点】C++ Input/Output Functions|C Standard Library I/O|GESP 一级 基础语法
命题人为什么考这个?因为“输入”是编程最基础的接口概念,但 C++ 有流式(cin/cout)和 C 风格(scanf/printf)两套体系,学生容易把 printf 当成输入,或者把 default 当成“默认输入”。这道题就是故意把三个输出项(printf、cout、default)和一个真正的输入项(scanf)混在一起,让你一眼识别出“读入”语义。
解题心法:拿到题先问自己“题干要的是输入还是输出?”看到“数据输入”四个字,立刻关进“读入”目录。C++ 流式输入是 cin,C 风格输入是 scanf;printf 和 cout 都是输出;default 是 switch 的默认分支,连输入都不沾边。选项里只有 scanf 符合读入语义,直接选 B。
逐个排除:A 选项 printf 是 C 风格输出,名字里带“print”就是输出;C 选项 default 只用在 switch 里做兜底分支,跟输入无关;D 选项 cout 是 C++ 流式输出,名字里带“out”就是输出。三者皆与输入无关,只能选 B。
避坑提醒:别被“printf/cout”这种输出字眼迷惑,也别把 default 当成“默认输入”,更别把 cin 和 scanf 搞混——cin 是流式输入,scanf 是 C 风格输入,两者都能读数据,但题目只给了 scanf 这一个正确选项,其他都是输出或无关。
考频与趋势:基础语法在题库中占比极大,共 1295 题,覆盖 11 个考试级别,逐年分布为 2008 年 1 题、2011 年 1 题、2019 年 3 题、2023 年 287 题、2024 年 413 题、2025 年 401 题、2026 年 109 题、null 年 80 题;分赛事中 GESP 一级就考了 332 题,二级 283 题,三级 215 题,四级 186 题,七级 91 题,八级 79 题,六级 78 题,五级 23 题,CSP 提高级 3 题,入门级 3 题,NOIP 提高组初赛 2 题。输入输出是 GESP 一级的高频考点,2024 年基础语法考了 413 题,2025 年考了 401 题,说明命题人持续重视基础语法的输入输出区分。
预测:基于现有数据,输入输出区分仍是 GESP 一级的高频考点,未来可能继续以“输入/输出函数识别”“流式 vs C 风格”“cin 与 cout 语义混淆”等形式出现,尤其会结合简单代码片段考查学生能否快速判断某行代码是读入还是输出。暂无足够依据预测更具体的题型变化。