注册 登录
编程论坛 C++教室

生成一个3*3的矩阵,第三行第三个为零,其余的是1~8的数随机排列,帮我改一下

根根本根 发布于 2018-03-21 20:21, 1411 次点击
#include <bits/stdc++.h>
using namespace std;
int c=0,a[6][6]={0},e=0,n=0;
bool t=true;
int main(){
    srand(time(0));
    cout << "¡ö                    ¡ö¡î2½    êy£o"<<c<< endl<< "¡ö                    ¡ö¡î2ù×÷·½·¨£o" << endl<< "¡ö                    ¡ö¡îêäèëêy×Öòƶˉ»¬¿é,3~5Ñ¡ÔñÄѶè" <<endl<< "¡ö                    ¡ö¡î1Ø    óú£o" << endl<< "¡ö                    ¡ö¡î»aèYμàV1.0" << endl<< "¡ö                    ¡ö¡î×÷Õߣo¸ù¸ù±¾¸ù" << endl;
    cout << "¡î¡î¡î¡î¡î¡î¡î¡î¡î¡î¡î";
    cout << "¡ö¡ö¡ö¡ö¡ö¡ö¡ö¡ö¡ö¡ö¡ö¡ö¡î¡î¡î¡î¡î¡î¡î¡î¡î¡î¡î¡î¡î"<<endl;
    cin>>e;
    n=e;
    if(n==0){
        return 0;
    }
//到下一个注释中间是重点
    for(int i=0;i<n;i++){
        for(int j=0;j<n-1;j++){
            t=true;
            a[i][j]=rand()%(n*n-1)+1;
            for(int k=0;k<i;k++){
                for(int l=0;l<j;l++){
                    if(a[k][l]==a[i][j]){
                        t=false;
                        break;
                    }
                }
                if(t){
                    if(j==0){
                        i--;
                        j=n-1;
                        break;
                    }
                    j--;
                    break;
                }
            }
        }
    }
//
    for(int i=0;i<n;i++){
        for(int j=0;j<n;j++){
            cout<<a[i][j];
        }
    }
    return 0;
}
3 回复
#2
根根本根2018-03-21 20:22
乱码不!重!要!!!
#3
根根本根2018-03-21 20:24
#4
根根本根2018-03-21 21:00
搞定了!
1