标签:
1 voidChangeColor(GTYPE g,int m,int n,char c,int i0,int j0) 2 { 3 char temp; 4 5 //判断是否在合法区域内 6 if(i0 <1|| i0 > m || j0 <1|| j0 > n) 7 return; 8 9 //防止进入死递归 10 temp = g[i0][j0]; 11 if(c == temp) 12 return; 13 14 g[i0][j0]= c; 15 //依次判断上、下、左、右点 16 if(i0 -1>=1&& g[i0-1][j0]== temp) 17 ChangeColor(g,m,n,c,i0-1,j0); 18 if(i0 +1<= m && g[i0+1][j0]== temp) 19 ChangeColor(g,m,n,c,i0+1,j0); 20 if(j0 -1>=1&& g[i0][j0-1]== temp) 21 ChangeColor(g,m,n,c,i0,j0-1); 22 if(j0+1<= n && g[i0][j0+1]== temp) 23 ChangeColor(g,m,n,c,i0,j0+1); 24 }
1 voidChangeColor(GTYPE g,int m,int n,char c,int i0,int j0) 2 { 3 char temp; 4 5 //判断是否在合法区域内 6 if(i0 <1|| i0 > m || j0 <1|| j0 > n) 7 return; 8 9 //防止进入死递归 10 temp = g[i0][j0]; 11 if(c == temp) 12 return; 13 14 //依次判断上、下、左、右点 15 if(i0 -1>=1&& g[i0-1][j0]== temp) 16 ChangeColor(g,m,n,c,i0-1,j0); 17 if(i0 +1<= m && g[i0+1][j0]== temp) 18 ChangeColor(g,m,n,c,i0+1,j0); 19 if(j0 -1>=1&& g[i0][j0-1]== temp) 20 ChangeColor(g,m,n,c,i0,j0-1); 21 if(j0+1<= n && g[i0][j0+1]== temp) 22 ChangeColor(g,m,n,c,i0,j0+1); 23 24 g[i0][j0]= c; 25 }
本文链接:http://www.cnblogs.com/cposture/p/4487417.html
标签:
原文地址:http://www.cnblogs.com/cposture/p/4487417.html