简单链表的建立
2016-05-01 10:00
239 查看
1、创建一个简单链表,新结点链入表头,最后输出链表。
输入输出显示:
![](http://img.blog.csdn.net/20160501095107677)
若输入的字符数大于10个,只取前10个。若小于10个,则不足的都是空字符。
2、创建一个链表,新结点链入表尾,最后输出链表。
#include <iostream> using namespace std; #define New(p) {p=(Node *)malloc(sizeof(Node));p->ch=getchar();p->next=NULL;} typedef struct node { char ch; struct node *next; }Node; //新结点链入表头 int main() { Node *first = NULL,*p; char ch; for(int i=0;i<10;i++) { New(p); p->next = first; first = p; } p = first; while(p!=NULL) { printf("%c ",p->ch); p = p->next; } system("pause"); return 0; }
输入输出显示:
若输入的字符数大于10个,只取前10个。若小于10个,则不足的都是空字符。
2、创建一个链表,新结点链入表尾,最后输出链表。
#include <iostream> using namespace std; #define New(p) { p=(Node *)malloc(sizeof(Node));p->ch=getchar();p->next=NULL;} typedef struct node { char ch; struct node *next; }Node; //新结点链入表尾 int main() { Node *p1,*p2 = NULL,*head = NULL;//p1表示新建的结点,p2是p1的上一个结点,head是头结点 for(int i=0;i<10;i++) { New(p1); if(head == NULL) { head = p1; } else { p2->next = p1; } p2 = p1; } while(head!=NULL) { cout<<head->ch<<" "; head = head->next; } system("pause"); return 0; }输入输出显示:
相关文章推荐
- SpringAOP Demo
- Leetcode:44. Wildcard Matching
- HDU 5676
- CoordinatorLayout与滚动的处理
- fold/foldLeft/foldRight区别和联系
- Hadoop分布式集群环境搭建(三节点)
- Mac常用终端命令汇总
- sunlime text 3 快捷键总结
- Shell脚本的条件控制和循环语句
- 深入浅出 Android Bundle类
- Android中读取文件中文乱码
- VMware 打开虚拟机电源时提示"内部错误"
- 动态规划-完全背包问题
- VMware 打开虚拟机电源时提示"内部错误"
- SpringIOC Demo
- <javascript>this不同调用模式引起的问题,函数内部调用函数this无效
- AndroidStudio必须知道的使用技巧
- jquery mobile cannot be created in a document with origin 'null' and URL
- composer更新不成功,启用国内镜像网站的配置更改办法
- 第94课:SparkStreaming 实现广告计费系统中在线黑名单过滤实战