用C语言 一个完整的程序完成矩阵的加法,减法,乘法
因为是新手,不太懂,希望大神可以指导一下
回复 楼主 房东的猫
矩阵的建立,我建议你用二维数组来实现。还有就是你可以把矩阵的加减乘除和直和全部都搞定。这好弄阿。只是除法要注意点,因为除法涉及到的问题要多一点。
#include<stdio.h> int main() { int a[15][15],i,j,k,t,b; printf("请输入一个3行3列的矩阵:\n"); for(i=0;i<3;i++) for(j=0;j<3;j++) scanf("%d",&a[i][j]); printf("请输入另一个3行3列的矩阵\n"); for(k=0;k<3;k++) for(t=0;t<3;t++) scanf("%d",&a[k+3][t+3]); printf("矩阵【1】\n"); for(i=0;i<3;i++){ for(j=0;j<3;j++) printf("%d ",a[i][j]); printf("\n"); } printf("矩阵【2】\n"); for(i=0;i<3;i++){ for(j=0;j<3;j++) printf("%d ",a[i+3][j+3]); printf("\n"); } printf("请选择要进行的运算:1 相加 2 相减 3 相乘\n"); scanf("%d",&b); if(b==1) { printf("相加:\n"); 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\t",a[i][j]); printf("\n");} } if(b==2) { printf("相减:\n"); 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\t",a[i][j]); printf("\n");} } if(b==3) { printf("相乘:\n"); 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\t",a[i+6][j+6]); printf("\n"); } } }