关于#c++#的问题,请各位专家解答!


#include
using namespace std;
int a[10][10];
int vis[6];
int ans[6];
int t=0;
void print(){
     t++;
     cout<<"answer "<":"<for(int i=1;i<=5;i++){
         cout<":";
        switch(ans[i]){
            case 1:cout<<"A"<break;
            case 2:cout<<"B"<break;
            case 3:cout<<"C"<break;
            case 4:cout<<"D"<break;
            case 5:cout<<"E"<break;
        }
     }
     cout<void search(int step){
     if(step==6){
         print();
     }
     else{
         for(int i=1;i<=5;i++){
             if(!vis[i]&&a[step][i]){
                 ans[step]=i,vis[i]=1;
                 search(step+1);
                 vis[i]=0;
             }
         }
     }    
}
int main(){
    for(int i=1;i<=5;i++){
        for(int j=1;j<=5;j++){
            cin>>a[i][j];
        }
    }
    search(1);
    if(t==0){
        cout<<"0"<return 0;
    }
    return 0;
}

为啥我输入
0 1 0 1 1
1 0 1 1 0
1 0 1 1 1
0 1 1 1 0
0 1 0 0 0
就错了呢?

你的代码要做什么,t没有被赋值,也没有调用print输出
所以自然什么都不会显示