设计一个支持矩阵加减乘运算的程序 用C编 希望有详解 初学者 源码简单点的 谢谢 啦!!

如题所述

楼主你好


具体代码如下:

#include<stdio.h>

#define N 80

void add(int a[][N],int b[][N],int n)

{

int i,j;

printf("和:\n");

for(i=0; i<n ;i++)

{

for(j=0; j<n; j++)

printf("%-3d",a[i][j]+b[i][j]);

printf("\n");

}

}

void sub(int a[][N],int b[][N],int n)

{

int i,j;

printf("\n差:\n");

for(i=0; i<n ;i++)

{

for(j=0; j<n; j++)

printf("%-3d",a[i][j]-b[i][j]);

printf("\n");

}

}

void mul(int a[][N],int b[][N],int n)

{

int i,j,k,index=0;

printf("\n乘积:\n");

for(i=0; i<n ;i++)

{

for(j=0; j<n ;j++)

{

index = 0;

for(k=0; k<n ;k++)

{

index += a[i][k] * b[k][j];

}

printf("%-3d",index);

}

printf("\n");

}

}

int main()

{

int a[N][N],b[N][N],i,j,n;

printf("输入矩阵长度n:\n");

scanf("%d",&n);

printf("输入矩阵a:\n");

for(i=0;i<n;i++)

for(j=0;j<n;j++)

scanf("%d",&a[i][j]);

printf("输入矩阵b:\n");

for(i=0;i<n;i++)

for(j=0;j<n;j++)

scanf("%d",&b[i][j]);

add(a,b,n);

sub(a,b,n);

mul(a,b,n);

return 0;

}


运行结果:

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-09
加减很简单,两层循环搞定,注意数组的大小就好
乘三层循环,也不难,纯数学问题
第2个回答  2013-04-09
不是很清楚你的需求追问

那个问题 用C编程下就行 顺便有点注解

追答

额,告诉要要怎么样的矩阵 这个是关键