0
点赞
收藏
分享

微信扫一扫

C语言中scanf函数的3种常见问题与应对技巧

芭芭蘑菇 2022-01-26 阅读 41

在写代码时难免对一些知识点不熟悉,导致犯错,今天分享几点小知识给大家。

空白符问题

#include<stdio.h>
int main(void){
    int a;  printf("input the data ");  scanf("%d ",&a);  //这里多了一个回车符  printf("%d",a);  return 0;}

结果要输入两个数程序才结束,而不是预期的一个。why?

原因:用空白符结尾时,scanf会跳过空白符去读下一个字符,所以你必须再输入一个数。这里的空白符包括空格,制表符,换行符,回车符和换页符。所以如果你用scanf("%d  ",&a)也会出现同样的问题。

解决方法:这种错误大多是输入的时候不小心,多注意一点就好了。这种问题也不好检查,编译没有问题,一个空格也不容易看出来。当你的程序出现上面的问题时,自己对照检查一下就可以了。

回车符也占位

#include <stdio.h>

main()

{

 int n = 5;

 char c[n];

 for(int i = 0; i < n; i++)

举报

相关推荐

0 条评论