c语言关于gets的一个问题

 我来答
达尔容项莲
2020-01-08 · TA获得超过2.9万个赞
知道大有可为答主
回答量:1.1万
采纳率:28%
帮助的人:695万
展开全部
这不是出错吧,应该是你abc()被执行的时候没有提示输入程序就结束了,这是由于你上面输入输入对应号码的时候回车符号依然存在与输入缓冲区中,gets执行的时候发现输入缓冲区中有数据而直接读取了,puts打印了回车符号,回车符号不可见,因此现象就是没有输入提示就结束了。解决方法是在gets前清空输入缓冲区:

//
头文件
#include
<stdlib.h>

//
gets前添加如下语句:
fflush(stdin);
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式