这是因为在上一次使用scanf后没有清空输入缓du存, 这样你再次使用scanf的时候函数就可能会认为你已经输入过了。
解决这一问题的最简单办法是在接收字符的scanf的控制符"%c"中的%前加一个空格写成" %c",把前一次输入遗留在输入缓冲区里的所有广义空格(' '、'\t'、'\n'等)都吸收掉。
扩展资料:
函数原型
int scanf(const char * restrict format,...);
函数 scanf() 是从标准输入流stdin(标准输入设备,一般指向键盘)中读内容的通用子程序,可以说明的格式读入多个字符,并保存在对应地址的变量中。
函数的第一个参数是格式字符串,它指定了输入的格式,并按照格式说明符解析输入对应位置的信息并存储于可变参数列表中对应的指针所指位置。
参考资料来源:百度百科-scanf (计算机语言函数)
C语言的scanf怎么没执行?
原创
©著作权归作者所有:来自51CTO博客作者嘿克不黑的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
vue-seamless-scroll 有部分点击没反应问题
vue-seamless-scroll 插件在使用过程中,子元素设置点击事件,部分没有反应问题
事件委托 vue-seamless-scroll 前端 -
C语言格式输入函数scanf()详解
printf ,c语言
printf c语言 -
python 安装好后 输入python还是没反应
安装anaconda的过程中遇到了各种问题,在这里总结一下,本来是装好的,直接安装,没有问题,但是跑神经网络模型代码的时候,直接kernel died ,restarting,然后突然spyder打不开,在修复的路上越走越远,直接导致了最后的卸载重装,电脑里有cuda,之前安装好的 ,这一部分是不用动的,就是查看自己cuda的版本,在官网上下载cuda和cudnn,按照教程直接安装即可,网上教程很
anaconda为spyder配置lsp anaconda安装spyder anaconda安装torch anaconda打不开