30/09/2018, 19:37

Cấu trúc dữ liệu và giải thuật - Hỏi cách máy tính chạy bài mã đi tuần

Các ban cho mình hỏi cách chạy bài toán mã đi tuần
Đây là Code C trong sách Giáo Trình trường mình :

include <stdio.h> 
include <conio.h> 

void ThuNuocTiepTheo(int i, int x, int y, int *q) ;
void  InBanCo(int n ); 
void XoaBanCo(int n);
 
int BanCo[10][10] ;
int dx[8]={2,1,-1,-2,-2,-1,1,2} ;
int dy[8]={-1,-2,-2,-1,1,2,2,1} ;
int n=8 ;

void ThuNuocTiepTheo (int i, int x, int y, int *q){ 
int k, u, v, q1; 
k=0; 
do{ 
*q1=0 ;
u=x+dx[k]; 
v=y+dy[k]; 
if( (u>=0)  && (u < n) && (v >=0) && (v < n) ) && (BanCo[u][v]==0)  
{ 
BanCo[u][v]=i; 
if (i < n*n)  
{ 
ThuNuocTiepTheo( i+1, u, v, q1); 
if(  (*q1) == 0){ 
BanCo[u][v] = 0 ; } 
}else (*q1 = 1)
} k++; 
}while( ((*q1) == 0 && (k<8) );
void InBanCo(int n){ 
int i ; 
int j ; 
for(i=0; i<n-1; i++){ 
for((j=0; j<n-1; j++)  
if(BanCo[i][j]<10) printf("%d  ",BanCo[i][j] ); 
else printf(" %d  ",BanCo[i][j]); 
printf("

"); 
} 
} 
void XoaBanCo(int n){ 
int i ; 
int j ; 
for(i=0; i<n-1; i++)
for((j=0; j<n-1; j++)  BanCo[i][j] = 0;
} 
void main(){ 
int *q=0; 
clrscr() ; 
printf("cho kich thuoc ban co "); 
scanf("%d ", n ); 
XoaBanCo(n); 
BanCo[0][0]=1; 
ThuNuocTiepTheo(2,0,0,q); 
InBanCo(n); 
getch(); 
return ; 
}  

Khởi tạo ban đầu với vị trí (0, 0) sau đó nó chạy đến ô nào nữa ? và cách máy tính chạy các dòng code trên cụ thể là như thế nào ? chạy dòng nào trước dòng nào sau ?
Rất mong các bạn giải đáp

Long Vũ viết 21:39 ngày 30/09/2018

Bạn code j mà sai tùm lum vậy :3

Phạm Ngọc Hiếu viết 21:51 ngày 30/09/2018

Thanh niên là D14 CN hay AT,DT??

Bài liên quan
0