做HDU1010 带出来一个小问题

做1010  本来是想的DFS深搜  但是自己凭空打  打不出来  因为没有记模板  然后就去搜  但是看了一遍  自己打却又是有BUG  然后验证  就出现了一个二维字符数组打印的问题

  开始代码是这样

#include<stdio.h>
void main()
{
    char a[3][4];
    int i,j;
    for(i=0; i<3; i++)
    {
        //fflush(stdin);
        for(j=0; j<4; j++)
        {
            scanf("%c",&a[i][j]);
        }

    }
    for(i=0; i<3; i++)
    {
        for(j=0; j<4; j++)
        {
            printf("%c ",a[i][j]);
        }
        printf("
");
    }
}
View Code

但是如果输入是这样的话,输出结果是这样

换一种输入 结果又是这样

之后把  代码的注释去掉  就可以满足第一种输入的方法,输出结果也是有规律的  

主要就是fflush(stdin); 清空缓冲输入——清空输入流中留下的回车等其它输入,从而使下一次的输入总保持一个“干净”的状态。

原文地址:https://www.cnblogs.com/huangguodong/p/5587061.html