内容发布更新时间 : 2024/12/24 1:59:31星期一 下面是文章的全部内容请认真阅读。
/*本矩阵运算系统可以完成矩阵的加、减、乘法,但是只限于方阵*/
#include<stdio.h> #include<math.h>
/*--------------------全局变量定义-------------------------*/ int n,m,c=0;
int a[100][100],b[100][100]; int fc[100][100];
/*--------------------函数声明-----------------------------*/ void print(); void print_sub(); void input_marry(); void add_marry(); void sub_marry(); void mut_marry();
/*------------------主函数-----------------*/ void main() {
print();
scanf("%d",&c); while(c!='\\0') {
if(c==1) {input_marry();} if(c==2) {add_marry();} if(c==3) {sub_marry();} if(c==4) {mut_marry();} if(c==0) {c='\\0';}
printf("请选择运算:\\n\\n"); scanf("%d",&c); } }
/*----------------打印函数------------------*/ void print() {
printf(" 矩阵运算管理系统 \\n"); printf("------------------------------------\\n"); printf("1 输入矩阵\\n"); printf("2 矩阵相加\\n"); printf("3 矩阵相减\\n"); printf("4 矩阵相乘\\n"); printf("0 退出系统\\n");
printf("------------------------------------\\n"); printf("请选择:\\n\\n"); }
/*---------------矩阵输入-----------------------*/ void input_marry() {
int i,j;
printf("请输入矩阵的维数\\n\\n"); scanf("%d",&n); m=n*n;
/*---------------第一个矩阵输入-----------------*/
printf("请输入第一个矩阵a(共有M个元素):\\n\\n",m); do { m--;
for(i=0;i<n;i++) for(j=0;j<n;j++) {
scanf("%d",&a[i][j]); }
}while(m<0);
/*----------------打印第一个矩阵---------------*/ printf("您输入的矩阵a=\\n\\n"); for(i=0;i<n;i++) for(j=0;j<n;j++) {
printf("d",a[i][j]); if(j==n-1)printf("\\n"); }
/*---------------第二个矩阵输入-----------------*/ m=n*n;
printf("请输入第二个矩阵b(共有M个元素):\\n\\n",m); do { m--;
for(i=0;i<n;i++) for(j=0;j<n;j++) {
scanf("%d",&b[i][j]); }
}while(m<0);
/*----------------打印第二个矩阵---------------*/ printf("您输入的矩阵b=\\n\\n"); for(i=0;i<n;i++) for(j=0;j<n;j++) {
printf("d",b[i][j]); if(j==n-1)printf("\\n"); }
print_sub(); }
/*----------------矩阵加法运算-----------------*/ void add_marry() {
int i,j;
for(i=0;i<n;i++) for(j=0;j<n;j++) { fc[i][j]=0;
fc[i][j]=a[i][j]+b[i][j]; }
printf("矩阵和为:\\n\\n"); for(i=0;i<n;i++) for(j=0;j<n;j++) {
printf("d",fc[i][j]); if(j==n-1)printf("\\n"); }
print_sub(); }