//矩阵的基本操作:矩阵相加,矩阵相乘,矩阵转置
#include<stdio.h>
#include<stdlib.h>
#define M 2
#define N 3
#define P 4
int main()
{
//函数声明
void JuZhenXiangJia();
void JuZhenXiangCheng();
void JuZhenZhuanZhi();
JuZhenZhuanZhi();
JuZhenXiangJia();
JuZhenXiangCheng();
system("pause");
return ;
}
void JuZhenXiangJia()
{//两个二维数组相加
int i,j;
int A[M][N],B[M][N],C[M][N];
printf("请输入矩阵A的元素:\n");
for(i=;i<M;i++)
{
for(j=;j<N;j++)
{
scanf("%d",&A[i][j]);
}
}
printf("\n矩阵A如下所示:\n");
for(i=;i<M;i++)
{
for(j=;j<N;j++)
{
printf("%3d",A[i][j]);
}
printf("\n");
}
printf("\n请输入矩阵B的元素:\n");
for(i=;i<M;i++)
{
for(j=;j<N;j++)
{
scanf("%d",&B[i][j]);
}
}
printf("\n矩阵B如下:\n");
for(i=;i<M;i++)
{
for(j=;j<N;j++)
{
printf("%3d",B[i][j]);
}
printf("\n");
}
printf("\n");
//矩阵A和矩阵B的和放在矩阵C中
for(i=;i<M;i++)
{
for(j=;j<N;j++)
{
C[i][j] = A[i][j]+B[i][j];
}
}
printf("\n矩阵C如下:\n");
for(i=;i<M;i++)
{
for(j=;j<N;j++)
{
printf("%3d",C[i][j]);
}
printf("\n");
}
printf("\n");
} void JuZhenXiangCheng()
{//两个二维数组相乘
int i,j,k;
int A[M][N],B[N][P],C[M][P];
printf("请输入矩阵A的元素:\n");
for(i=;i<M;i++)
{
for(j=;j<N;j++)
{
scanf("%d",&A[i][j]);
}
}
printf("\n矩阵A如下所示:\n");
for(i=;i<M;i++)
{
for(j=;j<N;j++)
{
printf("%3d",A[i][j]);
}
printf("\n");
}
printf("\n请输入矩阵B的元素:\n");
for(i=;i<N;i++)
{
for(j=;j<P;j++)
{
scanf("%d",&B[i][j]);
}
}
printf("\n矩阵B如下:\n");
for(i=;i<N;i++)
{
for(j=;j<P;j++)
{
printf("%3d",B[i][j]);
}
printf("\n");
}
printf("\n");
//矩阵A和矩阵B相乘,积放在矩阵C中
for(i=;i<M;i++)
{
for(j=;j<P;j++)
{
C[i][j] = ;
for(k=;k<N;k++)
{
C[i][j] = C[i][j]+A[i][k]*B[k][j];
}
}
}
printf("\n矩阵C如下:\n");
for(i=;i<M;i++)
{
for(j=;j<P;j++)
{
printf("%5d",C[i][j]);
}
printf("\n");
}
printf("\n");
} void JuZhenZhuanZhi()
{//矩阵的转置
int i,j;
int A[M][N],B[N][M];
printf("请输入矩阵A的元素:\n");
for(i=;i<M;i++)
{
for(j=;j<N;j++)
{
scanf("%d",&A[i][j]);
}
}
printf("\n矩阵A如下所示:\n");
for(i=;i<M;i++)
{
for(j=;j<N;j++)
{
printf("%3d",A[i][j]);
}
printf("\n");
}
//矩阵转置为矩阵B
for(i=;i<M;i++)
{
for(j=;j<N;j++)
{
B[j][i] = A[i][j];
}
}
printf("转置后得到的矩阵B为:\n");
for(i=;i<N;i++)
{
for(j=;j<M;j++)
{
printf("%3d",B[i][j]);
}
printf("\n");
}
}

<矩阵的基本操作:矩阵相加,矩阵相乘,矩阵转置>的更多相关文章

  1. 简单物联网:外网访问内网路由器下树莓派Flask服务器

    最近做一个小东西,大概过程就是想在教室,宿舍控制实验室的一些设备. 已经在树莓上搭了一个轻量的flask服务器,在实验室的路由器下,任何设备都是可以访问的:但是有一些限制条件,比如我想在宿舍控制我种花 ...

  2. 利用ssh反向代理以及autossh实现从外网连接内网服务器

    前言 最近遇到这样一个问题,我在实验室架设了一台服务器,给师弟或者小伙伴练习Linux用,然后平时在实验室这边直接连接是没有问题的,都是内网嘛.但是回到宿舍问题出来了,使用校园网的童鞋还是能连接上,使 ...

  3. 外网访问内网Docker容器

    外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 ...

  4. 外网访问内网SpringBoot

    外网访问内网SpringBoot 本地安装了SpringBoot,只能在局域网内访问,怎样从外网也能访问本地SpringBoot? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装Java 1 ...

  5. 外网访问内网Elasticsearch WEB

    外网访问内网Elasticsearch WEB 本地安装了Elasticsearch,只能在局域网内访问其WEB,怎样从外网也能访问本地Elasticsearch? 本文将介绍具体的实现步骤. 1. ...

  6. 怎样从外网访问内网Rails

    外网访问内网Rails 本地安装了Rails,只能在局域网内访问,怎样从外网也能访问本地Rails? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Rails 默认安装的Rails端口 ...

  7. 怎样从外网访问内网Memcached数据库

    外网访问内网Memcached数据库 本地安装了Memcached数据库,只能在局域网内访问,怎样从外网也能访问本地Memcached数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装 ...

  8. 怎样从外网访问内网CouchDB数据库

    外网访问内网CouchDB数据库 本地安装了CouchDB数据库,只能在局域网内访问,怎样从外网也能访问本地CouchDB数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Cou ...

  9. 怎样从外网访问内网DB2数据库

    外网访问内网DB2数据库 本地安装了DB2数据库,只能在局域网内访问,怎样从外网也能访问本地DB2数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动DB2数据库 默认安装的DB2 ...

  10. 怎样从外网访问内网OpenLDAP数据库

    外网访问内网OpenLDAP数据库 本地安装了OpenLDAP数据库,只能在局域网内访问,怎样从外网也能访问本地OpenLDAP数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动 ...

随机推荐

  1. 【转】实现RTP协议的H.264视频传输系统

    1.  引言       随着信息产业的发展,人们对信息资源的要求已经逐渐由文字和图片过渡到音频和视频,并越来越强调获取资源的实时性和互动性.但人们又面临着另外一种不可避免的尴尬,就是在网络上看到生动 ...

  2. Java substring() 方法

    Java String类 substring() 方法返回字符串的子字符串. 语法 public String substring(int beginIndex) 或 public String su ...

  3. 杭JS

    杭JS的视频终于出来了.看了Garry Yao的视频依旧看不懂...总体上感觉是在职场上,我不在孤单了,勇敢的前进吧! 玉伯: 视频看了很多,什么情绪管理实践管理,最值得学习的就是知识管理定律了,找到 ...

  4. python中Url链接编码处理(urlencode,urldecode)

    做完了flask-web应用,这几天想用爬虫做个好玩的电影链接整合器,平时找电影都是在dytt或者dy2018之类的网站,在用dytt搜索电影<美国队长时>,发现他的搜索链接是这样的:ht ...

  5. hashtable 实现

    #include <stdlib.h> #include <stdio.h> #include <string.h> typedef struct _hashnod ...

  6. Android 编程下的代码混淆

    什么是代码混淆 Java 是一种跨平台的.解释型语言,Java 源代码编译成中间”字节码”存储于 class 文件中.由于跨平台的需要,Java 字节码中包括了很多源代码信息,如变量名.方法名,并且通 ...

  7. Android开发--环境配置

    1.下载android adt和sdk adt: 新建链接http://dl.google.com/android/ADT-xx.x.x.zip下载adt 注:xx为需要下载adt的版本号,可以在官网 ...

  8. 7款适用老旧设备并对初学者非常友好的轻量级Linux发行版

    我们由从 7 到 1 的顺序向大家介绍. 7. Linux Lite 正如其名,Linux Lite 是 Linux 发行版的一个轻量级版本,用户并不需要强大的硬件就可以将它跑起来,而且其使用非常简单 ...

  9. JDE910笔记2--OMW项目建立及简单使用[转]

    1.打开JDE的OBJECT MANAGEMENT WORKBENCH.在工作区中选择ADD,建立项目并选择OMW PROJECT,添加相关信息,如下图所示 其中,ProjectID可以对应不同的数据 ...

  10. RedHat 安装MySQL数据库【转】

      朋友购买了阿里云的服务器,服务器上自带有CentOS操作系统,但是开发软件需要自己安装,接下来将介绍本地RedHat Linux 5.10虚拟机上搭建Mysql数据库. 一.软件准备 (1)jdk ...