/*
-------------存储结构-三元组-----------------
#define MAXSIZE 10000 /*非0元素个数最大值10000*/
typedef struct{ int i,j; /*非0元素的行、列下标*/
ElemType e; /*非0元素值*/
}Triple;
typedef struct{ /*稀疏距阵存储结构*/
Triple data[MAXSIZE+1];/...
创建稀疏矩阵相应三元组的算法如下所示:
#define MAXSIZE 1000 /*假设非零元个数的最大值是1000*/
typedef struct
{
int i, j;
elemtype v;
}triple;
typedef struct
{
triple data[MAXSIZE+1]; /*data[0]用于存放稀疏矩阵行,列和非零元个数*/
int mu, nu, tu; /*稀疏矩阵行、列和非零元的个数*/
} spmatrix;
spmatrix a;
void CreatTripleTable (int array_a[M][N],spm...
用二维数组实现"魔方阵"的打印,所谓“魔方阵”是指满足每一行,每一列和对角线上的元素之和均相等的方阵。如:
8 1 63 5 74 9 2
就是一个三阶的魔方阵。现在要求编程实现任意输入一个自然数n,打印出相应的n阶魔方阵。
参考答案:
打印“魔方阵”算法如下所示:
void MagicMatrix( )
{
int a[16][16],i,j,k,p,m,n;
p=1;
while(p==1) /*输入1~15的奇数*/
{
printf("Please input n(n=1~15)\n");
scanf("%d",&...