c遇回车空格需谨慎--再记忆

简介: 为什么说再记忆呢...因为以前发过对scanf的探究..[button href="https://dyedd.cn/730.html"]历史[/button]对于字符来说,这样的输入不需要空格!
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也将帮你过滤掉空格!

目录
相关文章
|
7月前
|
算法
算法编程(二十八):重新排列单词间的空格
算法编程(二十八):重新排列单词间的空格
64 0
|
7月前
|
算法
算法编程(二十五):检查单词是否为句中其他单词的前缀
算法编程(二十五):检查单词是否为句中其他单词的前缀
67 0
|
数据采集 Java 机器人
根据正则表达式截取字串符,这个办法打败99%程序员
作为一名程序员,常常会在以下情况下使用函数功能根据正则表达式截取字符串:
|
2月前
|
算法
Leetcode第十七题(电话号码的字母组合)
这篇文章介绍了如何使用深度优先搜索(DFS)算法来解决LeetCode第17题——电话号码的字母组合问题,通过递归方法生成所有可能的字母组合。
25 0
Leetcode第十七题(电话号码的字母组合)
|
7月前
|
缓存
牛客网刷题总结(如何清除缓存区,字母大小写替换的两种方法,一元二次方程解的输出)
牛客网刷题总结(如何清除缓存区,字母大小写替换的两种方法,一元二次方程解的输出)
56 0
|
机器人
A . 单词拼写检查(无错哈希)
A . 单词拼写检查(无错哈希)
84 0
|
Unix C语言 C++
正确理解回车与换行
回车 \r 本义是光标重新回到本行开头 换行 \n 本义是光标往下一行(不一定到下一行行首)
185 0
|
Python
LeetCode 1974. 使用特殊打字机键入单词的最少时间
有一个特殊打字机,它由一个 圆盘 和一个 指针 组成, 圆盘上标有小写英文字母 'a' 到 'z'。只有 当指针指向某个字母时,它才能被键入。指针 初始时 指向字符 'a' 。
110 0
AcWing 766. 去掉多余的空格
AcWing 766. 去掉多余的空格
72 0
AcWing 766. 去掉多余的空格
|
C语言
C语言上机实验:输入一个字符和一个3位数字并作判断
C语言上机实验:输入一个字符和一个3位数字并作判断
193 0