6-2 sdut-C语言实验-逆序建立单链表

简介: 6-2 sdut-C语言实验-逆序建立单链表

6-2 sdut-C语言实验-逆序建立单链表

分数 12

全屏浏览

切换布局

作者 马新娟

单位 山东理工大学

输入N个整数,按照输入的相反顺序建立单链表存储,并遍历所建立的单链表,输出这些数据。

函数接口定义:

struct NODE *creat_node(int n);


参数n 为建立链表结点的个数。函数须返回单链表的地址。


void printf_node(struct NODE *head);


参数head为链表的头指针。函数不需返回。


裁判测试程序样例:

在这里给出函数被调用进行测试的例子。例如: #include<stdio.h> #include<stdlib.h> struct NODE{ int data; struct NODE *next; }; struct NODE *creat_node(int n); void printf_node(struct NODE *head); int main() { int n; scanf("%d",&n); struct NODE *p=creat_node(n); printf_node(p); return 0; } /* 请在这里填写答案 */


输入样例:

1. 8
2. 12 56 4 6 55 15 33 62

输出样例:

62 33 15 55 6 4 56 12

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

struct NODE *creat_node(int n)
{
 struct NODE *head,*p;
 head=(struct NODE*)malloc(sizeof(struct NODE));
 head->next=NULL;
 for(int i=0;i<n;i++)
 {
  struct NODE *p;
  p=(struct NODE*)malloc(sizeof(struct NODE));
  scanf("%d",&p->data);
  p->next=head->next;
  head->next=p;
 }
 return head;
}
void printf_node(struct NODE *head)
{
 struct NODE *p;
 p=head->next;
 while(p!=NULL)
 {
  if(p->next==NULL)
  {
   printf("%d\n",p->data);
  }
  else
  {
   printf("%d ",p->data);
  }
  p=p->next;
 }
}
目录
相关文章
|
5月前
链表9(优化版)7-9 sdut-C语言实验-约瑟夫问题
链表9(优化版)7-9 sdut-C语言实验-约瑟夫问题
23 0
|
5月前
|
BI
7-7 sdut-C语言实验-上升子序列
7-7 sdut-C语言实验-上升子序列
28 0
|
5月前
7-1 sdut-C语言实验-递归的函数
7-1 sdut-C语言实验-递归的函数
30 2
|
5月前
6-1 sdut-C语言实验-递归函数之快速排序
6-1 sdut-C语言实验-递归函数之快速排序
25 1
|
5月前
6-2 sdut-C语言实验-递归函数之快速排序
6-2 sdut-C语言实验-递归函数之快速排序
27 1
|
5月前
链表4(法二)------7-4 sdut-C语言实验-单链表中重复元素的删除
链表4(法二)------7-4 sdut-C语言实验-单链表中重复元素的删除
33 0
|
5月前
链表5(考试用)7-5 sdut-C语言实验-链表的逆置
链表5(考试用)7-5 sdut-C语言实验-链表的逆置
28 0
|
5月前
链表6(法二好理解)------ 7-6 sdut-C语言实验-有序链表的归并分数 20
链表6(法二好理解)------ 7-6 sdut-C语言实验-有序链表的归并分数 20
25 0
|
5月前
|
机器学习/深度学习 存储
sdut pta 链表3(优化)-----7-3 sdut-C语言实验-链表的结点插入
sdut pta 链表3(优化)-----7-3 sdut-C语言实验-链表的结点插入
29 0
|
5月前
sdut 链表6-------7-6 sdut-C语言实验-有序链表的归并
sdut 链表6-------7-6 sdut-C语言实验-有序链表的归并
20 0