C++实现两矩阵叉乘
(2011-08-22 19:41:43)
标签:
杂谈 |
分类: c/c++技巧 |
#include <iostream>
#define M 3
#define N 4
#define P 3
using namespace std;
#define M 3
#define N 4
#define P 3
using namespace std;
void getmt(int* m,int r,int
c) //获取矩阵
{
for(int
i=0;i<r;++i)
{
for(int
j=0;j<c;++j)
cin>>*(m+i*c+j);
}
}
void showmt(const int* m,int r,int c) //显示矩阵
{
for(int
i=0;i<r;++i)
{
for(int
j=0;j<c;++j)
cout<<*(m+i*c+j)<<"\t";
cout<<endl;
}
}
void mmt(const int* m1,const int* m2,int* m3,int m,int n,int p)
{
for(int
i=0;i<m;++i) //叉乘运算
{
for(int
j=0;j<p;++j)
{
for(int
k=0;k<n;++k)
{
(*(m3+i*p+j))+=(*(m1+i*n+k))*(*(m2+k*p+j));
}
}
}
}
int main(int argc, char *argv[])
{
int
m1[M][N];
int
m2[N][P];
int
m3[M][P];
{
void showmt(const int* m,int r,int c)
{
void mmt(const int* m1,const int* m2,int* m3,int m,int n,int p)
{
int main(int argc, char *argv[])
{