建立简单的链表
2016-03-03 16:17
411 查看
// test.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include<iostream> #include <iomanip> using namespace std; //#define NULL 0 struct student {long num; float score; student *next; }; int _tmain(int argc, _TCHAR* argv[]) { student *head=NULL; //链表的头指针,初始化为NULL student *p=head; //p用来指向当前链表的尾结点 student *s=NULL; //s用来指向新开辟的结点 s=new student; //动态开辟第一个新结点,让指针s指向它 /*为新结点赋值*/ s->num=31001; s->score=89.5; s->next=NULL; head=s; //头指针指向当前节点,作为链表中的第一个结点 p=s;//p指向第一个结点,也是当前链表的尾结点(因为当前链表中只有一个结点) s=new student; //动态开辟第二个新结点,让指针s指向它 /*为新结点赋值*/ s->num=31003; s->score=90; s->next=NULL; p->next=s; //将新结点连接到链表尾部 p=p->next; //将p指向当前的尾结点 s=new student; //动态开辟第二个新结点,让指针s指向它 /*为新结点赋值*/ s->num=31007; s->score=85; s->next=NULL; p->next=s; //将新结点连接到链表尾部 p=p->next; //将p指向当前的尾结点 //遍历数组,从链表的一个结点开始访问直到链表尾结点 p=head; do { cout<<p->num<<" "<<p->score<<endl;//输出当前指针p所指的结点内容 p=p->next; //当前指针p移动到下一个结点 }while(p!=NULL); system("pause"); return 0; }
相关文章推荐
- 知乎日报:她把全世界的学术期刊都黑了
- 连接点和线路点的区别
- iOS开发-swift基础学习二
- Java中的JavaCore/HeapDump文件及其分析方法
- docker新建自定义网桥,实现不同主机容器互联
- docker新建自定义网桥,实现不同主机容器互联
- 制作Ubuntu deb包的三种方法
- STM32中的PWM的频率和占空比的设置
- Axis2 start guide
- hibernate HQL查询几种参数绑定
- 求满足条件的行数据相减求差值问题
- Git 常用命令大全
- OpenDaylight安装使用
- C++ 128位 AES加密算法
- php连接mysql类PDO从php5才开始有
- Swift Release模式下屏蔽NSLog()
- 一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。
- android中下载加速
- 【软件测试】作业一:the error that impressed me
- 链表的反转