输入数列,以某数为结束标志, 以"后进先出" 方式生成单链表,输出表中各结点的值;再求表中首结点和尾结点的值。

#include <stdio.h>
#include <stdlib.h>
typedef struct node{
 int data;
 struct node *next;
}node, linklist;
node * hua_linklist( )
{
 linklist *L = 0 ;
    printf("输入数组,生成“先进后出”的单链表。当输入9则结束输入:/n");
 node *s;
 int x;
 
 do{
  scanf("%d", &x);
  s = (node *)malloc(sizeof(node));
  s -> data = x;
  s -> next = L;
  L = s;
  
 }while(x - 9);
 return L;
}

void hua_output(linklist *L)
{
 
 node *p;
 p = L;
 printf("表中各节点为:");
 while(p != 0){
  printf("/t%d", p -> data);
  p = p -> next;
 }
 p = L;
 /*node *q;
 q = (node *)malloc(sizeof(node));*/
    printf("/n首节点为:%d", p -> data);
 while( p -> next != 0){
  p = p ->next;
  if(p -> next == 0)
   printf("/n尾节点为:%d/n", p -> data);
 }
  /*q ->data = p -> data;
  p=p -> next;
   
 }
 printf("%d", q -> data);*/
}

void main ( )
{
 linklist *L;
 L = hua_linklist( );
 hua_output(L);
}
 


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值