📄 3.1.c
字号:
#define MAXSIZE 100
#include<stdio.h>
struct Triple
{int i,j,e;
};
struct TSMatrix
{struct Triple data[MAXSIZE+1];
int mu,nu,tu;
};
struct TSMatrix M;
struct TSMatrix T;
void CreatSMatrix()
{int n=0;
while(1)
{printf("please input all data:(i,j,e)\n");
n++;
scanf("%d%d%d",&M.data[n].i,&M.data[n].j,&M.data[n].e);
getchar();
if(n>=MAXSIZE)
break;
printf("continue?(y/n)\n");
if(getchar()=='n')
break;
getchar();
}
printf("please input the mu, nu and tu:\n");
scanf("%d%d%d",&M.mu,&M.nu,&M.tu);
getchar();
}
void PrintSMatrix(struct TSMatrix x)
{int n;
printf("i j e\n");
for(n=1;n<=x.tu;n++)
printf("%d %d %d\n",x.data[n].i,x.data[n].j,x.data[n].e);
printf("\n");
}
void TransposeSMatrix()
{int n,x=1;
int col;
T.mu=M.nu;
T.nu=M.mu;
T.tu=M.tu;
if(T.tu)
{for(col=1;col<=M.nu;++col)
for(n=1;n<=M.tu;n++)
if(M.data[n].j==col)
{T.data[x].i=M.data[n].j;
T.data[x].j=M.data[n].i;
T.data[x].e=M.data[n].e;
x++;
}
}
}
void main(void)
{CreatSMatrix();
printf("print SMatrix M:\n");
PrintSMatrix(M);
TransposeSMatrix();
printf("print SMatrix T:\n");
PrintSMatrix(T);
getchar();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -