#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
typedef struct person person;
struct person
{
char name[10];
int age;
int height;
person *next;
};
person *first = NULL;
person *current = NULL;
person *previous = NULL;
void main()
{
char flag;
for (;;)
{
printf("DO you want to continue logging(Y/N)");
scanf("%c",&flag);
if (toupper(flag) == 'N')
break;
current = (person*)malloc(sizeof(person));
if (current == NULL)//检查是否分配内存成功
printf("Memory allocation failed");
if(first==NULL)
first = current;
if (previous != NULL)
previous->next = current;
printf("Input name\n");
scanf("%s", ¤t->name);
printf("Input age\n");
scanf("%d", ¤t->age);
printf("Input height\n");
scanf("%d", ¤t->height);
current->next = NULL;
previous = current;
}
printf("\n");
current = first;
for (int i = 1; current != NULL;i++)
{
printf("%02d号\r姓名:%s\t\t年龄:%d\t身高:%d\n",i,current->name,current->age,current->height);
current=current->next;
}
}
C语言:单链表简单功能实现
最新推荐文章于 2022-10-19 22:23:34 发布