题:
#include<iostream>
using namespace std;
int main()
{
//将数据存储到数组中,用于后面构建对称矩阵
int a[8];
a[0]=0;
for(int i=1;i<8;i++)
a[i]=i;
int b[8];
b[0]=0;
for(int i=1;i<8;i++)
b[i]=1;
int map1[5][5];
//将二维数组清零
for(int i=0;i<5;i++)
for(int j=0;j<5;j++)
map1[i][j]=0;
//通过一维数组给二维数组矩阵赋值
int ans=1;
for(int i=1;i<5;i++)
{
for(int j=1;j<i;j++)
{
map1[i][j]=a[ans];
//map2[i][j]=b[ans];
ans++;
}
map1[i][i]=a[ans];
}
//完全矩阵
for(int i=1;i<5;i++)
{
for(int j=1;j<5;j++)
{
map1[i][j]=map1[j][i];
}
}
cout<<"A"<<endl;
//将矩阵输出
for(int i=1;i<5;i++)
{
for(int j=1;j<5;j++)
{
cout<<map1[i][j]<<" ";
}
cout<<endl;
}
cout<<"——————————————————————————————"<<endl<<endl<<"B"<<endl;
int map2[5][5];
//将二维数组清零
for(int i=0;i<5;i++)
for(int j=0;j<5;j++)
map2[i][j]=0;
//通过一维数组给二维数组矩阵赋值
int ans2=1;
for(int i=1;i<5;i++)
{
for(int j=1;j<i;j++)
{
map2[i][j]=b[ans2];
ans2++;
}
map2[i][i]=b[ans2];
}
//完全矩阵
for(int i=1;i<5;i++)
{
for(int j=1;j<5;j++)
{
map2[i][j]=map2[j][i];
}
}
//将矩阵输出
for(int i=1;i<5;i++)
{
for(int j=1;j<5;j++)
{
cout<<map2[i][j]<<" ";
}
cout<<endl;
}
cout<<"——————————————————————————————"<<endl<<endl<<"C"<<endl;
int map3[5][5];
//将二维数组清零
for(int i=0;i<5;i++)
for(int j=0;j<5;j++)
map3[i][j]=0;
for(int i=1;i<5;i++)
for(int j=1;j<5;j++)
map3[i][j]=map1[i][j]+map2[i][j];
//将矩阵输出
for(int i=1;i<5;i++)
{
for(int j=1;j<5;j++)
{
cout<<map3[i][j]<<" ";
}
cout<<endl;
}
cout<<"——————————————————————————————"<<endl<<endl<<"D"<<endl;
int map4[5][5];
//将二维数组清零
for(int i=0;i<5;i++)
for(int j=0;j<5;j++)
map4[i][j]=0;
int m=1;
int n=1;
for(int i=1;i<5;i++)
{
for(int j=1;j<5;j++)
{
for(int k=1;k<5;k++)
{
map4[i][j]+=map1[i][n]*map2[n][m];
n++;
}
n=1;
m++;
}
m=1;
}
for(int i=1;i<5;i++)
{
for(int j=1;j<5;j++)
{
cout<<map4[i][j]<<" ";
}
cout<<endl;
}
return 0;
}