用户2iml0wrkvn 发表于 2014-6-15 18:43:54

小甲鱼的的第十章的题目,我的死循环了,求分析

#include <stdio.h>
#include <malloc.h>
#include <stdlib.h>

#define LEN sizeof(struct student)        //

struct student *creat();                        //
void print(struct student *head);        //

struct student
{
        int num;
        float score;
        struct student *next;
};

int n;

void main()
{
        struct student *stu;
       
        stu = creat();
        print(stu);
        printf("\n\n");

        system("pause");

}

struct student *creat()
{
        struct student *head;
        struct student *p1,*p2;

        p1 = p2 = (struct student *)malloc(LEN);
        printf("please input the num:\n");
        scanf("%d",&p1 -> num);
        printf("please intput the score:\n");
        scanf("%f",&p1 -> score);

        head = NULL;
        n = 0;

        while(p1 -> num)
        {
                n++;
                if(n == 1)
                {
                        head = p1;
                }else
                {
                        p2-> next = p1;
                }

                p2 = p1;
                p1 = (struct student *)malloc(LEN);

                printf("please input a num:\n");
                scanf("%d",&p1 -> num);
                printf("please input the socre:\n");
                scanf("%d",&p1 -> score);
        }

        p2 -> next = NULL;
        return head;
}

void print(struct student *head)
{
        struct student *p;
        printf("There are %d records:\n\n",n);

        p = head;

        if(head)
        {
                do
                {
                        printf("ѧoÃÎa:%ldμÄ3鼨Îa:%2.1f\n",p -> num,p -> score);
                        p = p -> next;
                }while(p);
        }
}

用户2iml0wrkvn 发表于 2014-6-15 21:28:19

找到了,哈哈
页: [1]
查看完整版本: 小甲鱼的的第十章的题目,我的死循环了,求分析