首页 > 代码库 > 创建一个链表实例
创建一个链表实例
<span style="font-family:KaiTi_GB2312;font-size:18px;">#include <stdio.h> #include <stdlib.h> /* 提供malloc()原型 */ #include <string.h> //提供strcpy原型 #define TSIZE 45 struct film { char title[TSIZE]; int rating; struct film * next; //指向链表的下一个结构 }; int main(void) { struct film * head = NULL; struct film * prev, * current; char input[TSIZE]; //收集并存储信息 puts("Enter first movie title:"); while(gets(input) != NULL && input[0] != ‘\0‘) { current = (struct film *)malloc(sizeof(struct film)); if(head == NULL) head = current; else prev->next = current; strcpy(current->title,input); puts("enter your rating<0-10>:"); scanf("%d",¤t->rating); while(getchar()!=‘\n‘) continue; puts("Enter next movie title(empty line to stop):"); prev = current; } if(head == NULL) { printf("no data entered!"); } else printf("Here is the movie list:\n"); current = head; while(current != NULL) { printf("Movie :%s Rating : %d\n",current->title,current->rating); current = current->next; } printf("Bye!!\n"); return 0; } </span>
<span style="font-family:KaiTi_GB2312;font-size:18px;"> </span>
创建链表包含三个步骤:
1、使用malloc()函数为一个结构分配足够的空间
2、存储这个结构的地址
3、把正确的信息拷贝到这个结构中
创建一个链表实例
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。