首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

链表不能展示结果,

2012-09-06 
链表不能显示结果,,,C/C++ code//films2.c使用结构链表#include stdio.h#include stdlib.h//提供mallo

链表不能显示结果,,,

C/C++ code
//films2.c   使用结构链表#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;        current->next = NULL;        strcpy(current->title,input);        puts("Enter your rating <0-10>: ");        scanf("%d",&current->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;    }    //任务已完成,因此释放所分配的内存    current = head;    while(current != NULL)    {        free(current);        current = current->next;    }    printf("Bye!\n");    return 0;}


输入几条信息之后,以空行结束。
可是显示
Here is the movie list:
Bye!
程序就关闭了,何解?

[解决办法]
C/C++ code
if(head = NULL) 

热点排行