习题04-建立单链表(4).c

来自「数据结构各章实验源代码; 数据结构实验源代码」· C语言 代码 · 共 47 行

C
47
字号
#include  "datastru.h"
#include  <stdio.h>
#include  <malloc.h>

int count_head(LINKLIST *head){
/*带头结点的单链表: 输出单链表元素值并计数*/
  int i = 0;
  LINKLIST *p;
  p = head->next;
  printf("输出单链表元素值 : ");
  while(p != NULL)
   {i++;
    printf("  %c",p->data);
    p = p->next;}
    printf("\n");
    return i;
}

LINKLIST *creatlink_head_rail(LINKLIST *head){
/*用尾插入法建立带头结点的单链表*/
  LINKLIST *last, *t;
  char ch;
  
  t = (LINKLIST *)malloc(sizeof(LINKLIST));
  head = t;  last = t;
  t->next = NULL;
  printf("单链表元素值为单个字符, 连续输入,$为结束字符  : ");
  while ((ch = getchar()) != '$')
   {t = (LINKLIST *)malloc(sizeof(LINKLIST));
    t->data = ch;
    t->next = NULL;
    last->next = t;
    last = t;}
  return (head);
}

main()
{LINKLIST *head = NULL;
 int num;

printf("\n    建立单链表\n\n");
head = creatlink_head_rail(head);
fflush(stdin);
num = count_head(head);
printf("单链表元素个数 = %d\n", num);
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?