修改单链表为下面的功能

注意单链表的要求是创建结构体类型,类型成员是学号,姓名和一个结构体指针,节点至少是4个,组成一个单向静态链表,然后进行赋值和输入输出等功能,需要添加增加节点(定义一个结构体变量)、删除一个节点、修改一个节点的函数

#include<stdio.h>
#include<string.h>
int main()
{
 struct student
 {
  int num;
  char name[20];
  struct student *nextnode;
 }stu1,stu2,stu3,*head,*pstu;
 stu1.num=1000;
 stu2.num=2000;
 stu3.num=3000;
 strcpy(stu1.name,"zhangsan");
 strcpy(stu2.name,"lisi");
 strcpy(stu3.name,"wamgmz");
 head=&stu1;
 stu1.nextnode=&stu2;
 stu2.nextnode=&stu3;
 stu3.nextnode=NULL;
 printf("link ok\n");
 for(pstu=head;pstu!=NULL;pstu=pstu->nextnode)
  printf("%d %s\n",pstu->num,pstu->name);
 return 0;
}

参考GPT和自己的思路:

首先需要定义一个结构体类型,包含学号、姓名和一个指向下一节点的指针。赋值时可以定义几个结构体变量,然后将它们串联成一个单向静态链表。要添加节点可以定义一个结构体变量,然后将其插入到链表中。要删除节点可以遍历链表找到需要删除的节点,然后将其前一个节点的指针指向删除节点的下一个节点。要修改节点可以遍历链表找到需要修改的节点,然后对其学号和姓名进行修改。对于输入输出等功能,可以在主函数中实现。