【发布时间】:2020-11-29 11:10:25
【问题描述】:
打印isSymmetric函数有问题,不知道如何正确打印。我在 google 中找不到解决方案。
#include <iostream>
#include <iomanip>
using namespace std;
const int MAX = 100;
void transpose(int mat[MAX][MAX], int tr[][MAX], int N)
{
for (int i = 0; i < N; i++)
for (int j = 0; j < N; j++)
tr[i][j] = mat[j][i];
}
bool isSymmetric(int mat[MAX][MAX], int N)
{
int tr[MAX][MAX];
transpose(mat, tr, N);
for (int i = 0; i < N; i++)
for (int j = 0; j < N; j++)
if (mat[i][j] != tr[i][j])
return false;
return true;
}
void main() {
int matrix_size;
cout << "Enter rows and columns for quaratic matrix: ";
cin >> matrix_size;
//int* a = (int*)malloc(row * col * sizeof(int));
const int col = 99, row = 99;
int a[col][row];
srand((unsigned)time(NULL));
for (int i = 0; i < matrix_size; i++)
for (int j = 0; j < matrix_size; j++)
a[i][j] = 0 + rand() % (20 - 0 + 1);
cout << endl;
for (int i = 0; i < matrix_size; i++) {
for (int j = 0; j < matrix_size; j++)
cout << setw(4) << a[i][j];
cout << endl;
}
//if (isSymmetric(a, matrix_size)) has a problem
if (isSymmetric(a, matrix_size))
cout << "Yes";
else
cout << "No";
}
我收到以下错误,但我不知道它的说法是什么 错误(活动)E0167 类型“int ()[99U]”的参数与类型“int ()[100]”的参数不兼容
【问题讨论】:
-
void main()不是main的有效签名。main必须声明为返回int。如果您的编译器没有抱怨,请使用现代编译器。