用c++语言编写一个n行n列的二维数组,主对角线为1,其余为0

如题所述

#include <iostream>

using namespace std;

int main()
{
    int n;
    cin >> n;       //输入二维数组的行列数
    int a[n][n];
    for(int i=0;i<n;i++){   //对数组进行赋值
        for(int j=0;j<n;j++){
            if(i == j)
                a[i][j] = 1;
            else
                a[i][j] = 0;
        }
    }
    //结果的输出
    for(int i=0;i<n;i++){
        for(int j=0;j<n;j++){
            cout << a[i][j] << " ";
        }
        cout << endl;
    }

    return 0;
}

运行结果如下图所示:

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-01-09
设置两个变量a,b,初始值都为0然后两个循环,当a小于n时a+1,当a=n时换行,再嵌套一个当b小于n时b+1的循环,这个循环里加一个判断,当a=b时输出1,否则0,当b=n时结束
第2个回答  2015-01-09
干焘阗羿聂骅宓克伺始亦梵汶煊尚彻车浜蕫火赡
相似回答