c语言程序设计 矩阵加法
答案:5 悬赏:20 手机版
解决时间 2021-11-22 21:31
- 提问者网友:饥饿走向夜
- 2021-11-22 00:22
c语言程序设计 矩阵加法
最佳答案
- 五星知识达人网友:佘樂
- 2021-11-22 01:49
#include
void main()
{
int a[15][15],i,j,k,t,b;
printf("请输入一个3行3列的矩阵:
");
//<----此处覆盖掉了矩阵1;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
printf("请输入另一个3行3列的矩阵
");
for(k=0;k<3;k++)
for(t=0;t<3;t++)
scanf("%d",&a[k+3][t+3]);
printf("矩阵【1】
");
for(i=0;i<3;i++){
for(j=0;j<3;j++)
printf("%d ",a[i][j]);
printf("
");
}
printf("矩阵【2】
");
for(i=0;i<3;i++){
for(j=0;j<3;j++)
printf("%d ",a[i+3][j+3]);
printf("
");
}
printf("请选择要进行的运算:1 相加 2 相乘
");
scanf("%d",&b);
//<----------楼主此处以下的四个for一一嵌套算出来的结果没什么意义。
if(b==1)
{
printf("相加:
");
for(i=0;i<3;i++)
for(j=0;j<3;j++)
a[i][j]=a[i][j]+a[i+3][j+3];
for(i=0;i<3;i++){
for(j=0;j<3;j++)
printf("%d ",a[i][j]);
printf("
");}
}
if(b==2)
{
printf("相乘:
");
for(i=0;i<3;i++)
for(j=0;j<3;j++)
a[i+6][j+6] = a[i][0]*a[3][j+3] + a[i][1]*a[4][j+3] + a[i][2]*a[5][j+3];
for(i=0;i<3;i++){
for(j=0;j<3;j++)
printf("%d ",a[i+6][j+6]);
printf("
");
}
}
}复制后可直接编译运行,结果如下:格式可自行修改。
void main()
{
int a[15][15],i,j,k,t,b;
printf("请输入一个3行3列的矩阵:
");
//<----此处覆盖掉了矩阵1;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
printf("请输入另一个3行3列的矩阵
");
for(k=0;k<3;k++)
for(t=0;t<3;t++)
scanf("%d",&a[k+3][t+3]);
printf("矩阵【1】
");
for(i=0;i<3;i++){
for(j=0;j<3;j++)
printf("%d ",a[i][j]);
printf("
");
}
printf("矩阵【2】
");
for(i=0;i<3;i++){
for(j=0;j<3;j++)
printf("%d ",a[i+3][j+3]);
printf("
");
}
printf("请选择要进行的运算:1 相加 2 相乘
");
scanf("%d",&b);
//<----------楼主此处以下的四个for一一嵌套算出来的结果没什么意义。
if(b==1)
{
printf("相加:
");
for(i=0;i<3;i++)
for(j=0;j<3;j++)
a[i][j]=a[i][j]+a[i+3][j+3];
for(i=0;i<3;i++){
for(j=0;j<3;j++)
printf("%d ",a[i][j]);
printf("
");}
}
if(b==2)
{
printf("相乘:
");
for(i=0;i<3;i++)
for(j=0;j<3;j++)
a[i+6][j+6] = a[i][0]*a[3][j+3] + a[i][1]*a[4][j+3] + a[i][2]*a[5][j+3];
for(i=0;i<3;i++){
for(j=0;j<3;j++)
printf("%d ",a[i+6][j+6]);
printf("
");
}
}
}复制后可直接编译运行,结果如下:格式可自行修改。
全部回答
- 1楼网友:深街酒徒
- 2021-11-22 05:50
我直接说您错哪了吧,在我的理解里,你的两次都是赋给了同样的元素,那么第一次肯定会被覆盖吧。
所以你下面的a[i][j]可能不存在了吧
所以你下面的a[i][j]可能不存在了吧
- 2楼网友:一把行者刀
- 2021-11-22 04:48
main()
{
int a[3][3],b[3][3],c[3][3]={0},i,j,d,r;
printf("请输入一个3行3列的矩阵A: ");
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
printf("请输入另一个3行3列的矩阵B: ");
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&b[i][j]);
printf("请选择要进行的运算:1 相加 2 相乘 ");
scanf("%d",&d);
if(d==1)
{
for( i=0; i<3; i++ )
{
for( j=0; j<3; j++ )
{
c[i][j] = a[i][j] + b[i][j];
printf( "%d ", c[i][j] );
}
printf( " " );
}
}
else
{
for( i=0; i<3; i++ )
{
for( j=0; j<3; j++ )
{
for( r=0; r<3; r++ )
{
c[i][j] += a[i][r] * b[r][i];
printf( "%d ", c[i][j] );
}
printf( " " );
}
}
}
}
{
int a[3][3],b[3][3],c[3][3]={0},i,j,d,r;
printf("请输入一个3行3列的矩阵A: ");
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
printf("请输入另一个3行3列的矩阵B: ");
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&b[i][j]);
printf("请选择要进行的运算:1 相加 2 相乘 ");
scanf("%d",&d);
if(d==1)
{
for( i=0; i<3; i++ )
{
for( j=0; j<3; j++ )
{
c[i][j] = a[i][j] + b[i][j];
printf( "%d ", c[i][j] );
}
printf( " " );
}
}
else
{
for( i=0; i<3; i++ )
{
for( j=0; j<3; j++ )
{
for( r=0; r<3; r++ )
{
c[i][j] += a[i][r] * b[r][i];
printf( "%d ", c[i][j] );
}
printf( " " );
}
}
}
}
- 3楼网友:不如潦草
- 2021-11-22 04:07
#include
void main()
{
int a[15][15],arrb[15][15],i,j,k,t,b;
printf("请输入一个3行3列的矩阵: ");
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
printf("请输入另一个3行3列的矩阵 ");
for(k=0;k<3;k++)
for(t=0;t<3;t++)
scanf("%d",&arrb[k][t]);
printf("请选择要进行的运算:1 相加 2 相乘 ");
scanf("%d",&b);
if(b==1)
{
for(i=0,k=0;i<3,k<3;i++,k++)
{
for(j=0,t=0;j<3,t<3;j++,t++)
{
a[i][j]=a[i][j]+arrb[k][t];
printf("%d ",a[i][j]);
}
printf(" ");
}
}
}
void main()
{
int a[15][15],arrb[15][15],i,j,k,t,b;
printf("请输入一个3行3列的矩阵: ");
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
printf("请输入另一个3行3列的矩阵 ");
for(k=0;k<3;k++)
for(t=0;t<3;t++)
scanf("%d",&arrb[k][t]);
printf("请选择要进行的运算:1 相加 2 相乘 ");
scanf("%d",&b);
if(b==1)
{
for(i=0,k=0;i<3,k<3;i++,k++)
{
for(j=0,t=0;j<3,t<3;j++,t++)
{
a[i][j]=a[i][j]+arrb[k][t];
printf("%d ",a[i][j]);
}
printf(" ");
}
}
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯