网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

C语言中怎么利用链表实现一个学生信息管理系统-创新互联

本篇文章为大家展示了C语言中怎么利用链表实现一个学生信息管理系统,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

创新互联公司专业为企业提供离石网站建设、离石做网站、离石网站设计、离石网站制作等企业网站建设、网页设计与制作、离石企业网站模板建站服务,十余年离石做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

代码实现的功能:

1.插入学生信息 2.显示学生信息 3.删除学生信息 4.在指定位置插入学生信息 5.查找学生信息

代码内容:

#include #include #include #define Max_Student_Num 10#define Max_Str_len 20typedef struct T_student{ int number; char name [Max_Student_Num]; char phone[Max_Student_Num];};typedef struct T_Node{ struct T_student s; struct T_Node * next;};char command_str[]={"\n1 display all member;\n2 insert member;\n3 del member;\n4 exit\nCommand selection:"};struct T_student students[Max_Student_Num];struct T_Node * head = NULL;int main(int argc, char* argv[]){ int command, i; struct T_student student; struct T_Node * pStu =head; memset(&student,0,sizeof(student)); while(1){  printf("%s",command_str);  scanf("%d", &command);  switch(command)  {  case 1:   if(head==NULL){    printf("empty!!!!!!!!!!!!\n");    break;   }   if(head->next==head){    display_student(head);   }else{    pStu=head->next;    do    {     display_student(pStu);     pStu=pStu->next;    }while(pStu!= head->next);//   }   break;  case 2:   printf("enter new student number:");   scanf("%d", &student.number);   printf("enter new student name:");   scanf("%s", &student.name);   if(strlen(student.name) > Max_Str_len)   {    printf("name is too long!!\n");    continue;   }   printf("enter new student phone:");   scanf("%s", &student.phone);   if(strlen(student.phone) > Max_Str_len)   {    printf("phone is too long!!\n");    continue;   }   printf("\n");   if(student.number != 0)     insert_student(student);   break;  case 3:   printf("Inter deleted student number:");   scanf("%d", &student.number);   del_student(student);   break;  case 4:   return 0;  default:   printf("error command, try again\n");   break;  } }}void display_student( struct T_Node * pStu){ printf("number:%d name:%s phone:%s \n",pStu->s.number,pStu->s.name,pStu->s.phone);}void insert_student(struct T_student student){ struct T_Node* pNode ; struct T_Node* pStu =NULL; int size = sizeof(struct T_Node); pStu=(struct T_Node *)malloc (size); if(pStu == NULL){  return ; } memcpy(&pStu->s,&student,sizeof(student)); if(head==NULL){   pStu->next=head;   head=pStu;   head->next=head;   return ; } pStu->next = head->next; head->next=pStu;}void del_student(struct T_student student){ struct T_Node *pNode =NULL,*p=NULL; if(head->next==head && head->s.number==student.number){  pNode=head;  head=NULL;  free(pNode);  printf("success");  return; } for(pNode=head->next;pNode != head;pNode=pNode->next){  if( pNode->next->s.number == student.number){   p=pNode->next->next;   free(pNode->next);   pNode->next=p;   printf("Delete success!\n");   return;  } } printf("Not Found\n");}

上述内容就是C语言中怎么利用链表实现一个学生信息管理系统,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联行业资讯频道。


分享名称:C语言中怎么利用链表实现一个学生信息管理系统-创新互联
本文网址:http://bjjierui.cn/article/deddgj.html

其他资讯