| 
 | 
 
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册  
 
x
 
 本帖最后由 水吉雨文 于 2021-12-2 16:42 编辑  
 
#include <stdio.h> 
#include <stdlib.h> 
 
struct student 
{ 
    long num; 
    float score; 
}; 
 
struct node 
{ 
    struct student data; 
    struct node *next; 
}; 
 
//创建链表 
struct node *creatlist() 
{ 
    struct node *headnode=(struct node *)malloc(sizeof(struct node)); 
    headnode->next=NULL; 
    return headnode; 
} 
 
//创建结点 
struct node *creatnode(struct node data) 
{ 
    struct node *newnode=(struct node *)malloc(sizeof(struct node)); 
    newnode->data=data; 
    newnode->next=NULL; 
    return newnode; 
} 
 
//打印结点 
void printlist(struct node *headnode) 
{ 
    struct node *pmove=headnode->next; 
    while(pmove!=NULL) 
    { 
        printf("%d %d\n",pmove->data.num,pmove->data.score); 
        pmove=pmove->next;  
    } 
} 
 
//插入结点 
void insertnode(struct node *headnode,struct node data) 
{ 
    struct node *newnode=creatnode(data);//创建结点 
    newnode->next=headnode->next; 
    headnode->next=newnode; 
} 
 
int main() 
{ 
    struct student info; 
    struct node *list=creatlist(); 
    for(int i=1;i<=3;i++) 
    { 
        printf("请输入学生的学号和成绩"); 
        scanf("%d %d",&info.num,&info.score); 
        insertnode(list,info); 
    } 
    printlist(list); 
    return 0; 
} 
 
 
编译器一直提示创建结点函数出问题了 
怎么改啊,求大佬们帮小白看看怎么做
 本帖最后由 jhq999 于 2021-12-2 20:57 编辑 
- #include <stdio.h>
 
 - #include <stdlib.h>
 
  
- struct student
 
 - {
 
 -     long num;
 
 -     float score;
 
 - };
 
  
- struct node
 
 - {
 
 -     struct student data;
 
 -     struct node *next;
 
 - };
 
  
- //创建链表
 
 - struct node *creatlist()
 
 - {
 
 -     struct node *headnode=(struct node *)malloc(sizeof(struct node));
 
 -     headnode->next=NULL;
 
 -     return headnode;
 
 - }
 
  
- //创建结点
 
 - struct node *creatnode(struct student data)//////////////////////////
 
 - {
 
 -     struct node *newnode=(struct node *)malloc(sizeof(struct node));
 
 -     newnode->data=data;
 
 -     newnode->next=NULL;
 
 -     return newnode;
 
 - }
 
  
- //打印结点
 
 - void printlist(struct node *headnode)
 
 - {
 
 -     struct node *pmove=headnode->next;
 
 -     while(pmove!=NULL)
 
 -     {
 
 -         printf("%d %d\n",pmove->data.num,pmove->data.score);
 
 -         pmove=pmove->next;
 
 -     }
 
 - }
 
  
- //插入结点
 
 - void insertnode(struct node *headnode,struct student data)//////////////////////
 
 - {
 
 -     struct node *newnode=creatnode(data);//创建结点
 
 -     newnode->next=headnode->next;
 
 -     headnode->next=newnode;
 
 - }
 
  
- int main()
 
 - {
 
 -     struct student info;
 
 -     struct node *list=creatlist();
 
 -     for(int i=1;i<=3;i++)
 
 -     {
 
 -         printf("请输入学生的学号和成绩");
 
 -         scanf("%d %d",&info.num,&info.score);
 
 -         insertnode(list,info);
 
 -     }
 
 -     printlist(list);
 
 -     return 0;
 
 - }
 
  复制代码 
 
 
 |   
 
 
 
 |