for(int i = 0;i<10;i++)
    for(int j = 0;j<2;j++)
    scanf("%c",&a[i][j]);

看到上面的例子,你会怎么输入呢?
abcdefghij1234567890 还是a b c d e f g h i j 1 2 3 4 5 6 7 8 9 0

为什么说再记忆呢...因为以前发过对scanf的探究..
[button href="https://dyedd.cn/730.html"]历史[/button]

对于字符来说,这样的输入不需要空格!

scanf (“% c",&a);// 就有问题了,会把回车也读进去,解决方法 1. 加个过滤掉回车的条件 ASCII..2. 自己加
sacnf 的分隔符

之前说的这个还不完全,按上面的例子,我们输入了20个字符后,回车,下面经过漫长的操作,直到一个scanf("%c",&b);,那么恭喜你,你之前的回车直接被读入了...

所以这提高一个更加方便的操作

for(int i = 0;i<10;i++)
    for(int j = 0;j<2;j++)
      scanf("%c",&a[i][j]);
...
....
// 防止空格键入 
getchar();
scanf("%c",&b);

getchar也将帮你过滤掉空格!

版权属于:染念
作品采用:本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。
更新于: 2020年06月09日 15:09
0
发表评论


180 文章数
673 评论量
4 分类数
184 页面数
已在风雨中度过 7年73天17小时41分
目录
来自 《c遇回车空格需谨慎--再记忆》
© 2024 染念Blog
浙ICP备19020194号-1
暗黑模式
暗黑模式
评论
返回顶部
© 2024 染念Blog
浙ICP备19020194号-1
暗黑模式
暗黑模式
评论
返回顶部