资讯专栏INFORMATION COLUMN

【C语言】scanf与回车的问题

CoXie / 1400人阅读

摘要:若后紧接着又有一个,如那么第二个会将上一个遗留在缓冲区的放在中,如何解决上述问题呢方法一利用将吸收方法二若两个输入是连续的可以直接用空格隔开方法三从缓冲区跳过

Q:

scanf后紧接着又有一个scanf,如:

scanf("%d",&h);scanf("%c",&c);

那么第二个scanf会将上一个scanf遗留在缓冲区的/n放在c中,如何解决上述问题呢?

S:

方法一:
利用getchar()/n吸收

scanf("%d",&h);getchar();scanf("%c",&c);

方法二:
若两个输入是连续的可以直接用空格隔开

scanf("%d %c",&h,&c);

方法三:
从缓冲区跳过

scanf("%d",&h);scanf("/n%c",&c);

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/122557.html

相关文章

  • [C/C++]C++IO流

    摘要:二中流的概念中的流是对一种有序连续且具有方向性的数据的抽象描述。用来进行标准错误的输出。在使用时候必须要包含文件并引入标准命名空间。实际是在其底层维护了一个类型的对象用来保存结果。可以使用将让返回其底层的对象。  本文对比了C语言的输入与输出,介绍了流的概念、C++IO流以及stringst...

    Lin_R 评论0 收藏0
  • 【浙大翁恺C语言】从0入门笔记【国家精品课程】(上)

    C语言程序设计 所有代码都展示main函数里面的代码 计算机的思维 辗转相除法 int u = 32;int v = 32;//如果v=0,计算结束,u就是最大公约数//v!=0计算u/v的余数,让u=v v=余数while(v!+0){ int temp = u%v; u = v; v = temp;}printf(%d,u); 从计算机到程序再到算法 计算机的思维和优势是把所有可能...

    ziwenxie 评论0 收藏0

发表评论

0条评论

CoXie

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<