在 C++ 中找到一个对称矩阵,它包含 0 至 N-1 的整数,并且主对角线只能包含 0
这里我们将看到如何生成一个 N 阶对称矩阵,并且每一行的元素都将包含数字 0 到 N – 1。对角线上的元素将始终为 0。
这项任务很简单,我们将形成一个 N x N 矩阵,然后对于每一行 i 和每一列 j,如果 i 和 j 相同,则将其标记为 0,否则,从 1 到 N – 1 增加一个计数器,为每一行放置值。
示例
#include <iostream>
using namespace std;
void makeSymmetricMatrix(int n) {
int matrix[n][n];
for(int i = 0; i<n; i++){
int count = 1;
for(int j = 0; j <n; j++){
if(i == j){
matrix[i][j] = 0;
}else{
matrix[i][j] = count++;
}
}
}
for(int i = 0; i<n; i++){
for(int j = 0; j <n; j++){
cout << matrix[i][j] << " ";
}
cout << endl;
}
}
int main() {
int n = 5;
makeSymmetricMatrix(n);
}输出
0 1 2 3 4 1 0 2 3 4 1 2 0 3 4 1 2 3 0 4 1 2 3 4 0
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP