gets()函数好像不能通过编译了?
#include<stdio.h>
#include<string.h>
#include<ctype.h>
char maze[50][100];
int numr;
void dfs(int i,int j);
int main()
{
//
freopen("input.txt","r",stdin);
int numcase;
scanf("%d",&numcase);
getchar();
while(numcase--)
{
numr=0;
int si,sj;
while(fgets(maze[numr],100,stdin) && maze[numr][0]!='_')
{
maze[numr][strlen(maze[numr])-1]='\0';
char *p = strchr(maze[numr], '*');
if(p)
{
si = numr;
sj = p-maze[numr];
}
numr++;
}
maze[numr][strlen(maze[numr])-1]='\0';
maze[si][sj] = ' ';
dfs(si,sj);
for(int i = 0; i <=numr;i++)
{
for(int j = 0; j<strlen(maze[i]);j++)
{
if(maze[i][j] == 1) putchar('#');
else putchar(maze[i][j]);
}
putchar('\n');
}
}
}
void dfs(int i,int j)
{
if(maze[i][j] != ' ') return;
maze[i][j] = 1;
dfs(i-1, j);
dfs(i+1, j);
dfs(i, j-1);
dfs(i, j+1);
}