查看: 469|回复: 1

求助,在VC++可以运行,gcc就不行了,求教

[复制链接]
发表于 2016-12-12 16:07:49 | 显示全部楼层 |阅读模式
5啊哈币
#include <stdio.h>
#include <stdlib.h>

struct stud_node {
     int    num;
     char   name[20];
     int    score;
     struct stud_node *next;
};

struct stud_node *createlist()
{
        int n=0;
        struct stud_node *p,*head,*tail;
        p=tail=(struct stud_node*)malloc(sizeof(struct stud_node));
        scanf("%d %s %d",&p->num,&p->name,&p->score);
        head=NULL;
        while(p->num!=0)
        {
                n=n+1;
                if(n==1)
                        head=p;
                else
                        tail->next=p;
                tail=p;
                p=(struct stud_node*)malloc(sizeof(stud_node));
                scanf("%d",&p->num);
                if(p->num==0)
                        break;
                scanf("%s %d",&p->name,&p->score);
        }
        tail->next=NULL;
        return(head);
}
struct stud_node *deletelist( struct stud_node *head, int min_score )
{
        int n=0;
        struct stud_node *p1,*p2;
        p1=head;
        p2=head->next;
        while(p2!=NULL)
        {
                n=n+1;
                while(p1->score<min_score&&n==1)
                {
                    p1=head->next;
                        free(head);
                        head=p1;
                        p2=p1->next;
                }
                if(p2->score<min_score)
                {
                        p1->next=p2->next;
                        free(p2);
                        p2=p1;
                }
                else
                {
                        p1=p2;
                        p2=p1->next;
                }
        }
        return(head);
}


int main()
{
    int min_score;
    struct stud_node *p, *head = NULL;

    head = createlist();
    scanf("%d", &min_score);
    head = deletelist(head, min_score);
    for ( p = head; p != NULL; p = p->next )
        printf("%d %s %d\n", p->num, p->name, p->score);

    return 0;
}


回复

使用道具 举报

发表于 2016-12-13 16:18:04 | 显示全部楼层
你这个程序没问题(Dev c++编译运行通过,JFE and GCC 编译运行通过)
但是,最好不要用VC++写代码,有些vc的代码不是标准的c++,带到其他地方会报错(如DevC++)
虽然不明白你编写这个程序的意图,但是应该没错
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表