做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("\n");
    }
}
View Code

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

 

换一种输入 结果又是这样

 

 

 

 

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

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

 

posted @ 2016-06-15 12:41  果冻0_0  阅读(207)  评论(0编辑  收藏  举报