C语言数据结构之循环链表的简单实例
发布时间 - 2026-01-11 02:03:56 点击率:次C语言数据结构之循环链表的简单实例

实例代码:
# include <stdio.h>
# include <stdlib.h>
typedef struct node //定义链表中结点的结构
{
int code;
struct node *next;
}NODE,*LinkList;
/*错误信息输出函数*/
void Error(char *message)
{
fprintf(stderr,"Error:%s/n",message);
exit(1);
}
//创建循环链表
LinkList createList(int n)
{
LinkList head; //头结点
LinkList p; //当前创建的节点
LinkList tail; //尾节点
int i;
head=(NODE *)malloc(sizeof(NODE));//创建循环链表的头节点
if(!head)
{
Error("memory allocation error!/n");
}
head->code=1;
head->next=head;
tail=head;
for(i=2;i<n;i++)
{
//创建循环链表的节点
p=(NODE *)malloc(sizeof(NODE));
tail->next=p;
p->code=i;
p->next=head;
tail=p;
}
return head;
}
第二种方法:
//创建循环链表方法2(软件设计师教程书上的方法)
LinkList createList2(int n)
{
LinkList head,p;
int i;
head=(NODE *)malloc(sizeof(NODE));
if(!head)
{
printf("memory allocation error/n");
exit(1);
}
head->code=1;
head->next=head;
for(i=n;i>1;--i)
{
p=(NODE *)malloc(sizeof(NODE));
if(!p)
{
printf("memory allocation error!/n");
exit(1);
}
p->code=i;
p->next=head->next;
head->next=p;
}
return head;
}
void output(LinkList head)
{
LinkList p;
p=head;
do
{
printf("%4d",p->code);
p=p->next;
}
while(p!=head);
printf("/n");
}
void main(void)
{
LinkList head;
int n;
printf("input a number:");
scanf("%d",&n);
head=createList(n);
output(head);
}
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
# C语言数据结构之循环链表
# 循环链表
# C
# 实现循环链表的方法
# C语言实现循环链表
# C语言基于循环链表解决约瑟夫环问题的方法示例
# C语言数据结构之判断循环链表空与满
# C语言数据结构之双向循环链表的实例
# C语言中双向链表和双向循环链表详解
# C语言单循环链表的表示与实现实例详解
# C语言实现带头双向循环链表的接口
# 链表
# 数据结构
# 希望能
# 种方法
# 谢谢大家
# 错误信息
# 书上
# stdlib
# node
# struct
# typedef
# LinkList
# void
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
如何用PHP快速搭建CMS系统?
Laravel事件监听器怎么写_Laravel Event和Listener使用教程
Laravel如何使用Laravel Vite编译前端_Laravel10以上版本前端静态资源管理【教程】
制作旅游网站html,怎样注册旅游网站?
Linux网络带宽限制_tc配置实践解析【教程】
如何在Windows 2008云服务器安全搭建网站?
宙斯浏览器文件分类查看教程 快速筛选视频文档与图片方法
如何在Windows环境下新建FTP站点并设置权限?
如何在VPS电脑上快速搭建网站?
利用JavaScript实现拖拽改变元素大小
大同网页,大同瑞慈医院官网?
JavaScript如何实现音频处理_Web Audio API如何工作?
uc浏览器二维码扫描入口_uc浏览器扫码功能使用地址
laravel服务容器和依赖注入怎么理解_laravel服务容器与依赖注入解析
教学论文网站制作软件有哪些,写论文用什么软件
?
打造顶配客厅影院,这份100寸电视推荐名单请查收
消息称 OpenAI 正研发的神秘硬件设备或为智能笔,富士康代工
郑州企业网站制作公司,郑州招聘网站有哪些?
微信小程序 闭包写法详细介绍
Laravel怎么实现API接口鉴权_Laravel Sanctum令牌生成与请求验证【教程】
如何破解联通资金短缺导致的基站建设难题?
Laravel如何处理JSON字段_Eloquent原生JSON字段类型操作教程
Laravel用户认证怎么做_Laravel Breeze脚手架快速实现登录注册功能
WordPress 子目录安装中正确处理脚本路径的完整指南
如何快速启动建站代理加盟业务?
Laravel的Blade指令怎么自定义_创建你自己的Laravel Blade Directives
如何用5美元大硬盘VPS安全高效搭建个人网站?
Laravel集合Collection怎么用_Laravel集合常用函数详解
Laravel怎么清理缓存_Laravel optimize clear命令详解
如何彻底卸载建站之星软件?
如何做网站制作流程,*游戏网站怎么搭建?
非常酷的网站设计制作软件,酷培ai教育官方网站?
动图在线制作网站有哪些,滑动动图图集怎么做?
javascript事件捕获机制【深入分析IE和DOM中的事件模型】
JavaScript实现Fly Bird小游戏
javascript日期怎么处理_如何格式化输出
IOS倒计时设置UIButton标题title的抖动问题
香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化
Laravel怎么实现模型属性转换Casting_Laravel自动将JSON字段转为数组【技巧】
怎样使用JSON进行数据交换_它有什么限制
如何在腾讯云免费申请建站?
长沙企业网站制作哪家好,长沙水业集团官方网站?
移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?
网站优化排名时,需要考虑哪些问题呢?
公司网站制作价格怎么算,公司办个官网需要多少钱?
Python进程池调度策略_任务分发说明【指导】
香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧
Laravel如何使用集合(Collections)进行数据处理_Laravel Collection常用方法与技巧
如何在万网利用已有域名快速建站?
百度浏览器如何管理插件 百度浏览器插件管理方法

