博客
关于我
拉丁方阵问题练习
阅读量:599 次
发布时间:2019-03-12

本文共 1536 字,大约阅读时间需要 5 分钟。

#include "stdio.h"#include "stdbool.h"#include "string.h"#include "math.h"#include "stdlib.h"#include "stdarg.h"#include "time.h"typedef int Elemtype;typedef int Status;typedef struct node{	Elemtype data;	struct node* next;} Node;typedef struct node* LinkList;void CreatLatin(LinkList *CL,int num);void DeleteList(LinkList *CL);int main(void){	LinkList List;	int i,n;	printf("1.创建拉丁方阵\n2.释放当前方阵内存\n 输入0退出 \n");	while(i != 0)	{		scanf("%d",&i);		switch(i)		{			case 1:				printf("要创建n*n的方阵?\n请输入n = ");				scanf("%d",&n);				putchar('\n');				CreatLatin(&List,n);			break;			case 2:                DeleteList(&List);			break;		}	}	return 0;}void CreatLatin(LinkList *CL,int n){	LinkList temp,rear,p;	*CL = (LinkList)malloc(sizeof(Node));	(*CL)->next = *CL;	rear = *CL;	for(int i = 0 ; i < n ; i++)	{		temp = (LinkList)malloc(sizeof(Node));		temp->data = i+1;		temp->next = rear->next;		rear->next = temp;		rear = temp;	}	rear->next = (*CL)->next;	p = (*CL)->next;	for(int j = 0;j < n;j++)	{		for(int k = 0;k < n;k++)		{			printf("%d ",p->data);			p = p->next;		}		putchar('\n');		p = p->next;	}	putchar('\n');}void DeleteList(LinkList *CL){    LinkList temp,temp1;    int count = 2;    temp = (*CL)->next;    temp1 = *CL;    while(temp->next != (*CL)->next)    {        temp = temp->next;        count++;    }    LinkList buff[count];    for(int i = 0;i < count;i++)    {        buff[i] = temp1;        temp1 = temp1->next;    }    for(int i = 0; i < count;i++)    {        free(buff[i]);    }    *CL = 0;    printf("释放了%d个结点\n",count);}

转载地址:http://tcgtz.baihongyu.com/

你可能感兴趣的文章
MySQL 备份 Xtrabackup
查看>>
mysql 复杂查询_mysql中复杂查询
查看>>
mYSQL 外键约束
查看>>
mysql 多个表关联查询查询时间长的问题
查看>>
mySQL 多个表求多个count
查看>>
mysql 多字段删除重复数据,保留最小id数据
查看>>
MySQL 多表联合查询:UNION 和 JOIN 分析
查看>>
MySQL 大数据量快速插入方法和语句优化
查看>>
mysql 如何给SQL添加索引
查看>>
mysql 字段区分大小写
查看>>
mysql 字段合并问题(group_concat)
查看>>
mysql 字段类型类型
查看>>
MySQL 字符串截取函数,字段截取,字符串截取
查看>>
MySQL 存储引擎
查看>>
mysql 存储过程 注入_mysql 视图 事务 存储过程 SQL注入
查看>>
MySQL 存储过程参数:in、out、inout
查看>>
mysql 存储过程每隔一段时间执行一次
查看>>
mysql 存在update不存在insert
查看>>
Mysql 学习总结(86)—— Mysql 的 JSON 数据类型正确使用姿势
查看>>
Mysql 学习总结(87)—— Mysql 执行计划(Explain)再总结
查看>>