请问在c语言中是不是如果用scanf输入整型数字的话,scanf会无视空格键。

请问在c语言中是不是如果用scanf输入整型数字的话,scanf会无视空格键。然而用scanf输入字符串的话,scanf只会跳过第一个空格?

C语言除了用%c读取char型单字符不会跳过空格(这里的空格包括:空格、制表符、跟回车键一起被键入的换行符),其他的格式说明符:如%s字符串,%d整型,%ld长整型,%hd短整型,%f单精度浮点型,%lf双精度浮点型,%Lf长双精度浮点型等等都会跳过所有前缀空格,直到遇到第一个非空格字符。追答

你可以把你说的读取字符串时只跳过第一个空格的例子发上来,我帮你找找原因。

追问

这个我刚刚找到原因了。。还有就是请问比如我用一个循环输入整型数组的话我给数组的长度为4的话。我打入1空格2空格3还是的话那我现在让它循环输出这4个。请问结果是123还是1 2

追答

如果你输入:1
2 3

4
它会输出1234。读取每个元素都会跳过空格和换行。

其实我没太看懂你说呢话。如果你打印4个数组元素,它应该输出4个数字,怎么会只有123或者12呢

追问

我知道了

谢谢啦

温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网