单链表的创建与输出(C++)----用于实现学生管理系统

链表

单链表又叫线性链表或单向链表。它是线性表的来链接储存表示。使用单链表储存结构时,其数据元素只存在逻辑联系而不存在物理联系,能够很好的解决数据溢出问题。单链表中的每个数据都储存在链表节点中,每个节点结构体中有两个储存域:数据域和指针域。其中,数据域中储存链表节点的数据元素,指针域储存了指向该链表节点的下一个节点的指针。

链表结构体如下所示:

typedef struct node{			
	int data;
	struct  node *next;
}*List;                            //*List代表将结构体中的指针类型

 

单链表的创建及输出代码如下:

#include<iostream>
using namespace std;
typedef struct node{
	int data;                      //数据域
	struct node *next;             //指针域
}node;                             //链表结构体的定义

struct node *Create()              //链表创建函数
{
	struct node *head,*p,*tail;
	cout<<"请输入链表数据,以0结束!!!"<<endl;
	head=p=tail=new node;
	cin>>p->data;
	
	while(p->data!=0)
	{
		tail->next=p;
		tail=p;
		
		p=new node;
		cin>>p->data;
	}
	tail->next=NULL;
	cout<<"链表创建完毕!!!"<<endl;
	return head;                   //返回链表头指针
}

void Show(node *head)              //链表输出函数
{
	node *p;
	p=head;
	while(p)
	{
		cout<<p->data<<" ";
		p=p->next;
	}
	cout<<endl; 
	cout<<"链表输出完毕!!!"<<endl;
}

int main()
{
	struct node *head;
	head=Create();
	Show(head);
    return 0;
}

========================================================================

这篇博客中的代码是我在大一的时候写的,现在两年过去了,我想就这篇博客来分享一下我的想法:

        一般来说,新生的课程设计都会以学生管理系统作为题目,但是在学习完学校的课程之后,我对于c/c++相关知识还是懵懵懂懂,实在不知道如何完成这个作业。经过一段时间的摸索,我实现了链表的创建,之后的几天就一步步的完善自己的程序,终于完成了作业。这个过程我不断的查漏补缺,也是这个作业,让我对编程的兴趣更加浓厚,之后的学习生活中,我更加的有兴趣,也更积极的学习编程。正因为如此,我仅仅上传了链表的创建部分,并没有将管理系统上传,希望你们可以自己完成下面的部分。

        反观那些从网上搜索作业,然后直接上交的同学,虽然他们有的欺骗了老师,拿到了高分,但是他们在之后也迷失了自我,之后再写作业也是上网搜索,完全没有学习的欲望,反正结果都是一样,甚至上交的作业比认真做的同学得到的分数更高,整个大学生活就这样浑浑噩噩的过去了。所以我想在这啰嗦几句,如果有人看到了这些,请你尽可能的充实自己,不要随波逐流,相信你自己,一定能够成为一个优秀的程序员,加油!!!

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值