c++矩阵类
#include<iostream>
using namespace std;
int x = 0;
//定义矩阵类
class Matrix {
public:
float M[100];
void get_in();
int m=0,n=0,k=0;
};
void Matrix::get_in(){
x++;
cout<<"please enter the"<<x<<"st matrix:";
char c;
cin>>M[k];
while((c=getchar())!='\n')
{
cin>>M[++k];
if(c==';')m++;
}
m++;
k++;
n=k/m;
}
//定义矩阵相乘函数
void mat_mul(Matrix A, Matrix B) {
float C[10][10]= {0};
int i=0, j=0, a=0;
for (i = 0; i < A.m; i++) {
for (j = 0; j < B.n; j++) {
for (a = 1; a <= A.n; a++) {
C[i][j] += A.M[i*A.n + a - 1] *B.M[(a - 1)*B.n + j];
}
}
}
cout << "A*B=" << endl;
int u, v;
for (u = 0; u < A.m; u++) {
for (v = 0; v < B.n; v++) {
if (v != B.n - 1) {
cout<< C[u][v] << ",";
}
else{
cout<<C[u][v]<<endl;
}
}
}
}
int main() {
Matrix A, B;
A.get_in();
B.get_in();
if (A.n != B.m) {
cout << "error";
return 0;
}
mat_mul(A, B);
system("pause");
return 0;
}