矩阵的运算程序(C语言版)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

#include

#define M 20

#define N 20

float A[M][N];

float B[M][N];

float C[M][N];

int i,j,m,n,p,q;

float y=1.0;

void main()

{

printf(" ###########################################\n");

printf(" ##### 欢迎您使用矩阵函数包系统。 ######\n");

printf(" ##### 系统功能: ######\n");

printf(" ##### 计算两个矩阵相加,相减; ######\n");

printf(" ##### 数乘矩阵;矩阵转置;求逆 ######\n");

printf(" ##### 矩阵 ######\n");

printf(" ###########################################\n");

printf("请选择您需要的运算,按回车键结束\n");

printf("************************************************************* *****\n");

printf("1,矩阵相加\n");

printf("2,矩阵相减\n");

printf("3,数乘矩阵\n");

printf("4,矩阵转置\n");

printf("5,逆矩阵 \n");

printf("6,退出 \n");

printf("************************************************************* *****\n");

int x;

scanf("%d",&x);

switch (x)

{

case 1:

{

printf("请输入矩阵A的行数和列数(用逗号隔开):");

scanf("%d,%d",&i,&j);

printf("请输入矩阵B的行数和列数(用逗号隔开):") ;

scanf("%d,%d",&m,&n);

if(i!=m||j!=n)

printf("***对不起,您输入的两个矩阵不能相加,请重试.***\n");

else printf("请输入矩阵A:\n");

for(p=0;p

for(q=0;q

scanf("%f",&A[p][q]);

printf("输出矩阵A:\n");

for(p=0;p

for(q=0;q

{

printf("%10.2f",A[p][q]);

if((q+1)%j==0)

printf("\n");

}

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

for(p=0;p

for(q=0;q

scanf("%f",&B[p][q]);

printf("输出矩阵B:\n");

for(p=0;p

for(q=0;q

{

printf("%10.2f",B[p][q]);

if((q+1)%j==0)

printf("\n");

}

printf("矩阵A+矩阵B为:\n"); //计算两个矩阵相加

for(p=0;p

for(q=0;q

C[p][q]=A[p][q]+B[p][q];

for(p=0;p

for(q=0;q

{

printf("%10.2f",C[p][q]);

if((q+1)%j==0)

printf("\n");

}

};break;

case 2:

{

printf("请输入矩阵A的行数和列数(用逗号隔开):");

scanf("%d,%d",&i,&j);

printf("请输入矩阵B的行数和列数(用逗号隔开):") ;

scanf("%d,%d",&m,&n);

if(i!=m||j!=n)

printf("***对不起,您输入的两个矩阵不能相减,请重试.***\n"); else printf("请输入矩阵A:\n");

for(p=0;p

for(q=0;q

scanf("%f",&A[p][q]);

printf("输出矩阵A:\n");

for(p=0;p

for(q=0;q

{

printf("%10.2f",A[p][q]);

if((q+1)%j==0)

printf("\n");

}

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

for(p=0;p

for(q=0;q

scanf("%f",&B[p][q]);

printf("输出第矩阵B:\n");

for(p=0;p

for(q=0;q

{

printf("%10.2f",B[p][q]);

if((q+1)%j==0)

printf("\n");

}

printf("矩阵A-矩阵B为:\n"); //计算两个矩阵相减for(p=0;p

for(q=0;q

C[p][q]=A[p][q]-B[p][q];

for(p=0;p

for(q=0;q

{

printf("%10.2f",C[p][q]);

if((q+1)%j==0)

printf("\n");

}

};break;

case 3:

{

float k;

printf("请输入矩阵A的行数和列数(用逗号隔开):"); scanf("%d,%d",&i,&j);

printf("请输入矩阵A\n");

for(p=0;p

for(q=0;q

scanf("%f",&A[p][q]);

printf("输出矩阵A\n");

相关文档
最新文档