#include#define MAXSIZE 100;
typedef struct{
int i,j,e;
}Triplr;
typedef struct{
Triplr date[MAXSIZE+1];
int mu,nu,tu;
}Matrix;
void Input(Matrix *M){
int q,p,m.n=1;
printf("PLease input row and column:\n");
scanf("%d%d",&q,&p);
*M.mu=q;
*M.nu=p;
for(p=1;p<=M.mu;q++)
for(q=1;q<=M.nu;q++){
printf("Please input");
printf("%d",*M.mu);
printf("row and");
printf("%d",*M.nu);
printf("column\n");
scanf("%d",&m);
if(m){
*M.date[n].i=p;
*M.date[n].j=q;
*M.date[n].e=m;
}
}
}
void Output(Matrix M){
printf("Output Matrix");
int q,p,n=1;
for(q=1;q<=M.mu;q++){
for(p=1;p<=M.nu;p++){
if(q==M.date[n].i&&p==M.date[n].j){
printf("%4d",M.date[n]);
n++;
};
else
printf("0 ");
}
}
}
Static TransposeSMatrix(Matrix M,Matrix *T){
*T.nu=M.mu;
*T.mu=M.nu;
*T.tu=M.tu;
if(T.tu){
q=1;
for(col=1;col<=M.nu;++col)
for(p=1;p<=M.tu;++p)
if(M.date[p].j==col){
*T.date[q].i=M.date[p].j;
*T.date[q].j=M.date[p].i;
*T.date[q].e=M.date[p].e;
q++;
}
}
}
void main(){
Matrix M,T;
void Input(&M);
void Output(M);
Static TransposeSMatrix(M,&T);
void Output(T);
getch();
}
有谁能帮我说说,我这个程序为什么不能实现呀,好多错误呀,最好\帮我讲解下,谢谢大家了...