做HDU1010 带出来一个小问题

时间:2023-12-22 15:15:08

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

开始代码是这样

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

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

做HDU1010  带出来一个小问题

换一种输入 结果又是这样

做HDU1010  带出来一个小问题

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

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