输入:1 2 3 4 5 -1

输出:5 4 3 2 1

此题考查头链表的创建之一 :头插法。所谓头插法是从一个空链表开始,重复读入数据,生成新结点,将读入的数据存放新结点的数据域中,然后讲新结点插入到当前链表的头结点之后,直至读入结束标志为止。

#include <stdio.h>
#include <stdlib.h>

typedef struct Node
{
int data ;
struct Node * pNext ;
}* PNODE ,NODE ;
PNODE creat_list(void) ;
void show_list(PNODE phead) ;

int main()
{
PNODE phead = NULL ;
phead = creat_list() ;
show_list(phead) ;
return 0 ;
}
PNODE creat_list(void)
{
int val;
PNODE phead = (PNODE)malloc(sizeof(NODE)) ; //为头指针开辟内存空间
phead->pNext = NULL ; //初始化空链表
// PNODE pNew =NULL ;//初始化新结点
while(1)
{
scanf("%d",&val);
if(val<0 ) break ;
PNODE pNew =(PNODE)malloc(sizeof(NODE)) ; //// 为新结点开辟内存空间
pNew->data = val ;
pNew->pNext = phead->pNext ;//! 将头指针所指向的下一个结点的地址,赋给新创建结点的next
phead->pNext = pNew ; //!把新结点挂到头结点后面(插入)

}

return phead ;
}
void show_list(PNODE phead)
{
PNODE p = phead->pNext ;
while(p!=NULL)
{
printf("%d ",p->data);
p=p->pNext ;
}
printf("\n");
}

最新文章

  1. mysql备份文件注释乱码处理工具
  2. ubuntu安装遇到的问题
  3. (easy)LeetCode 228.Summary Ranges
  4. github--新手使用错误分析
  5. Android开发之查看应用包名package和入口activity名称的方法
  6. Media Formatters媒体格式化器
  7. ELF文件格式分析--结构篇
  8. 微端启动器LAUNCHER的制作之MFC版二(下载)
  9. springmvc实现视频上传+进度条
  10. 剑指offer 6.查找和排序 旋转数组的最小数字
  11. LeetCode:114_Flatten Binary Tree to Linked List | 将一棵二叉树变成链表的形式 | Medium
  12. Apollo的Oracle适配
  13. 源码编译安装mysql5.5.33
  14. android 6.0 动态权限
  15. saltstack之混合匹配
  16. Python练习-迭代器-模拟cat|grep文件
  17. 空洞卷积(dilated Convolution) 与感受野(Receptive Field)
  18. jni java C/C++ 相互调用
  19. python学习——练习题(11)
  20. 成都Uber优步司机奖励政策(4月5日)

热门文章

  1. MySQL存储过程和游标
  2. PR2018制作电子相册
  3. PMP--1.5 项目管理描述
  4. 解决burpsuit 浏览器您的连接不是私密连接的问题
  5. win7无法访问局域网中其它计算机:0x80070035
  6. Elasticsearch配置集群环境
  7. MAC安装MacPorts 卡在“正在运行软件包脚本”的解决办法
  8. P5016 龙虎斗
  9. excel的count、countif、sunif、if
  10. C语言程序设计(实验一)