c++ 链表类创建 demo
来源:互联网 发布:意大利火车时刻表软件 编辑:程序博客网 时间:2024/06/16 00:40
1_student_link_list.cpp
#include<iostream>using namespace std;struct student{ int id;string name;int age; student()=default; student(int i,string n,int a) :id(i),name(n),age(a) {} student(student &s){ id=s.id;name=s.name;age=s.age; } ~student(){} student * next=nullptr;};student * head=nullptr;int create_stu_list(){ student* p=nullptr; char ch; while(1) { p = new student(); cin>>p->id>>p->name>>p->age; p->next = head; head = p; cout<<"是否继续?[Y/n]"; cin>>ch; if(ch == 'n' || ch== 'N') break; } return 0;}int show_stu_list(){ student *p = head; while(p) { cout<<p->id<<" "<<p->name<<" "<<p->age<<endl; p = p->next; } return 0;}int main(){ create_stu_list(); show_stu_list();}
2_student_list_class.cpp
#include<iostream>using namespace std;struct student{ int id;string name;int age; student()=default; student(int i,string n,int a) :id(i),name(n),age(a) {} student(student &s){ id=s.id;name=s.name;age=s.age; } ~student(){} student * next=nullptr;};struct stu_list{ private: student * head=nullptr; public: int create_stu_list() { student* p=nullptr; char ch; while(1) { p = new student(); cin>>p->id>>p->name>>p->age; if(cin.fail())break; p->next = head; head = p;// cout<<"是否继续?[Y/n]";// cin>>ch;// if(ch == 'n' || ch== 'N')// break; } return 0; } int show_stu_list() { student *p = head; while(p) { cout<<p->id<<" "<<p->name<<" "<<p->age<<endl; p = p->next; } return 0;}};int main(){ stu_list sl; sl.create_stu_list(); sl.show_stu_list();// stu_list sl1;// sl1.create_stu_list();// sl1.show_stu_list();// create_stu_list();// show_stu_list();}
3_work.cpp
#include<iostream>using namespace std;struct student{ int id;string name;int age; student()=default; student(int i,string n,int a) :id(i),name(n),age(a) {} student(student &s){ id=s.id;name=s.name;age=s.age; } ~student(){} student * next=nullptr;};struct stu_list{ private: student * head=nullptr; public: int create_stu_list() { student* p=nullptr; char ch; while(1) { p = new student(); cin>>p->id>>p->name>>p->age; if(cin.fail())break; p->next = head; head = p;// cout<<"是否继续?[Y/n]";// cin>>ch;// if(ch == 'n' || ch== 'N')// break; } return 0; } int show_stu_list() { student *p = head; while(p) { cout<<p->id<<" "<<p->name<<" "<<p->age<<endl; p = p->next; } return 0;}//return value: 0/OK,-1/failed;int insert(student &s){ student *p =new student(s); if(p == nullptr){ perror("new p"); return -1; } p->next = head; head = p; return 0;}int remove(int id){ student* p=head,*q=head; while(p) { if(p->id == id) break; q =p; p=p->next; } if(p){ if(p == head){ head = head->next; }else q->next = p->next; delete p; return 0; }else return -1; }};int main(){ stu_list sl; student s(1005,"zhaoqi",20); sl.create_stu_list(); sl.insert(s); sl.show_stu_list(); cout<<"delete 1003:--------------"<<endl; sl.remove(1005); sl.remove(1004); sl.show_stu_list();// stu_list sl1;// sl1.create_stu_list();// sl1.show_stu_list();// create_stu_list();// show_stu_list();}
4_work.cpp
#include<iostream>using namespace std;struct student{ int id;string name;int age; student()=default; student(int i,string n,int a) :id(i),name(n),age(a) {} student(student &s){ id=s.id;name=s.name;age=s.age; } ~student(){} student * next=nullptr;};struct stu_list{ private: student * head=nullptr; public: int create_stu_list() { student* p=nullptr; char ch; while(1) { p = new student(); cin>>p->id>>p->name>>p->age; if(cin.fail())break; p->next = head; head = p;// cout<<"是否继续?[Y/n]";// cin>>ch;// if(ch == 'n' || ch== 'N')// break; } return 0; } int show_stu_list() { student *p = head; while(p) { cout<<p->id<<" "<<p->name<<" "<<p->age<<endl; p = p->next; } return 0;}//return value: 0/OK,-1/failed;int insert(student &s){ student *p =new student(s); if(p == nullptr){ perror("new p"); return -1; } p->next = head; head = p; return 0;}int remove(int id){ student* p=head,*q=head; while(p) { if(p->id == id) break; q =p; p=p->next; } if(p){ if(p == head){ head = head->next; }else q->next = p->next; delete p; return 0; }else return -1; }int reserve_stu_list(){ student * new_head=nullptr,*p; if(head == nullptr)return -1; while(head) { p = head; head=head->next; p->next = new_head; new_head = p; } head = new_head; return 0;}int release_stu_list(){ student *p=head,*q=head; while(p) { q = p->next; delete p; p = q; } head= nullptr;}};int main(){ stu_list sl; sl.create_stu_list();// cout<<"reserve list:-----------"<<endl;// sl.reserve_stu_list(); sl.release_stu_list(); sl.show_stu_list();}
0 0
- c++ 链表类创建 demo
- 动态创建CheckBox Demo
- github_项目DEMO创建
- react native demo创建
- Executors创建多线程demo
- SpringMVC最小demo创建
- 创建采购订单DEMO
- c写php扩展之编译php源码,创建扩展模块,编写扩展demo
- c写php扩展之编译php源码,创建扩展模块,编写扩展demo
- c写php扩展之编译php源码,创建扩展模块,编写扩展demo
- Xen Demo C语言版
- C socket demo
- Win32服务Demo 【C】
- xen demo c版本
- linux c mysql demo
- UART App demo.c
- Objective-C Rectangle Demo
- objective-c demo
- 自定义View之TitleBar
- C# Linq复杂一点的查询
- Android MediaPlayer状态机 接口 方法解析
- selector
- FBO离屏渲染技术
- c++ 链表类创建 demo
- 获取radio点击事件
- js 判断点是否在多边形内
- Lua_第 20 章 IO库
- framework 开发 之 mmssms.db 中表结构的理解
- GoAhead 2.1.8嵌入式webserver源码分析学习(二)---源码文件结构分析
- C# 枚举类型
- emulator: warning: opening audio input failed
- linux 设置group_concat_max_len