为什么输出的不是一个矩阵啊?(矩阵乘法C++)

为什么输出的不是一个矩阵啊?(矩阵乘法C++)

img

#include<bits/stdc++.h>
using namespace std;

int main(){
int n,m,k;
int i,j,ii;

int a[100][100];
int b[100][100];
int ab[100][100];

cout << "请输入矩阵a的行数、列数以及b的列数:" << endl;
cin >> n >> m >> k;

cout << "请输入矩阵a:" << endl;
for( i = 0;i < n;i++)
for( j = 0;j < m;j++){
    cin >> a[i][j];
}

cout << "请输入矩阵b:" << endl;
for( i = 0;i < m;i++)
for( j = 0;j < k;j++){
    cin >> b[i][j];
}

for( i = 0;i < n;i++){
    for( j = 0;j < k;j++){
        ab[i][j] = 0;
        for( ii = 0;ii < m;ii++){
            ab[i][j] = ab[i][j]+a[i][ii]*b[ii][j];
        }
    }
}

cout << "矩阵a和b的乘积为:" << endl;
for( i = 0;i < n;i++){
    for( j = 0;j < k;j++){
        cout << ab[i][j] << endl;
    }
}

system("pause");
return 0;

}

img


改成

for (i = 0; i < n; i++)
{
    for (j = 0; j < k; j++)
    {
        cout << ab[i][j] << " ";
    }
    cout << endl;
}

cout<< <<endl会换行