国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C > 正文

C語言鏈表實現學生管理系統

2020-01-26 13:26:35
字體:
來源:轉載
供稿:網友

本文實例為大家分享了C語言鏈表實現學生管理系統的具體代碼,供大家參考,具體內容如下


#include<stdio.h>#include<ctype.h>#include<fstream>#include<stdlib.h>#include<string.h>#include<iostream>using namespace std;typedef struct ndoe{ char id[10]; char name[10]; char sex[3]; char num[10];  struct node *next;}student;struct Student{ student data; struct Student *next;};/********創建學生信息**********/ Student * insert(Student * head){  Student * s,*r;  head=(Student *)malloc(sizeof(Student)); printf("請輸入學生的個數:");  int n;  scanf("%d",&n);  r=head;  printf("按照“學號 姓名 性別(M or G) 手機號”的形式輸入每個學生的信息/n");  for(int i=0;i<n;i++){  s=(Student *)malloc(sizeof(Student));  /*scanf("%s",s->data.id);  scanf("%s",s->data.name);  scanf("%s",s->data.sex);  scanf("%s",s->data.num);*/ scanf("%s%s%s%s",s->data.id,s->data.name,s->data.sex,s->data.num);  r->next=s;  r=s; } r->next=NULL; printf("錄入成功/n");  return head;}/********增加學生************/void add(Student *head){ Student *s; s=head->next; while(s->next!=NULL) s=s->next; Student *ad=(Student *)malloc(sizeof(Student)); ad->next=NULL; s->next=ad; //printf("輸入新學生的信息:/n"); scanf("%s%s%s%s",ad->data.id,ad->data.name,ad->data.sex,ad->data.num); printf("添加成功/n"); return ;}/*************修改學生信息********************/ void change(Student * head){ printf("輸入1,按學號搜索學生,并修改改學生的信息/n"); printf("輸入2,按姓名搜索學生,并修改改學生的信息/n"); Student * s; int n; scanf("%d",&n); switch(n){ case 1:{ printf("請輸入學號:"); char number[10]; scanf("%s",number);  s=head->next; while(s!=NULL){ if(strcmp(s->data.id,number)==0){  printf("請輸入要修改的信息:");  char phone[10];  scanf("%s",phone);  strcpy(s->data.num,phone);  printf("修改成功/n");  break; } s=s->next; }  break; } case 2:{ printf("請輸入姓名:"); char nam[10]; scanf("%s",&nam);  s=head->next; while(s!=NULL){ if(strcmp(s->data.name,nam)==0){  printf("請輸入要修改的信息:"); char phone[10];  scanf("%s",phone);  strcpy(s->data.num,phone);  printf("修改成功/n");  break; } s=s->next; }  break; } }  return ;}/**********刪除學生信息******************/void del(Student * head){ printf("輸入1,按學號搜索學生,并刪除該學生的信息/n"); printf("輸入2,按姓名搜索學生,并刪除該學生的信息/n"); Student * s,*r; int n; scanf("%d",&n); switch(n){ case 1:{ printf("請輸入學號:"); char number[10]; scanf("%s",number);  s=head->next;  r=head; while(s!=NULL){ if(strcmp(s->data.id,number)==0){  r->next=s->next;  free(s);  printf("刪除成功/n");  break; } r=s; s=s->next; }  break; } case 2:{ printf("請輸入姓名:"); char nam[10]; scanf("%s",&nam);  s=head->next;  r=head; while(s!=NULL){ if(strcmp(s->data.name,nam)==0){  r->next=s->next;  free(s);  printf("刪除成功/n");  break; } r=s; s=s->next; }  break; } } return ;}/**********查詢學生的信息**********************/void check(Student * head){ printf("輸入1,按學號搜索學生,并展示該學生的信息/n"); printf("輸入2,按姓名搜索學生,并展示該學生的信息/n"); Student * s,r; int n; scanf("%d",&n); switch(n){ case 1:{ printf("請輸入學號:"); char number[10]; scanf("%s",number);  s=head->next; while(s!=NULL){ if(strcmp(s->data.id,number)==0){  printf("%s %s %s %s/n",s->data.id,s->data.name,s->data.sex,s->data.num);  break; } s=s->next; }  break; } case 2:{ printf("請輸入姓名:"); char nam[10]; scanf("%s",&nam);  s=head->next; while(s!=NULL){ if(strcmp(s->data.name,nam)==0){  printf("%s %s %s %s/n",s->data.id,s->data.name,s->data.sex,s->data.num);  break; } s=s->next; }  break; } } if(s==NULL) printf("該學生不存在/n"); return ;} int main(){ Student *head=NULL; Student *a; printf("***歡迎進入學生管理系統***/n"); printf("***1:請錄入學生信息***/n"); printf("***2:請修改學生信息***/n"); printf("***3:請刪除學生信息***/n"); printf("***4:請查詢學生信息***/n"); printf("***5:請添加新學生信息**/n"); printf("***6: 退出管理系統 ***/n"); printf("*************************/n"); printf("請輸入命令:"); int n; while(scanf("%d",&n)&&n!=6){ switch(n){ case 1:{ printf("請錄入學生信息:/n"); head=insert(a); break; } case 2:{ printf("請改學生信息:/n"); change(head); break; } case 3:{ cout<<"請刪除學生信息:"<<endl; del(head); break; } case 4:{ cout<<"請查詢學生信息:"<<endl; check(head);  break; } case 5:{ cout<<"請添加新學生信息:"<<endl; add(head); break; }  default : break; } printf("請繼續輸入命令:");  } Student *s,*r; s=head->next; while(s!=NULL){ r=s->next; free(s); s=r; } free(head); return 0;}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 墨玉县| 五大连池市| 喀喇| 济源市| 沙雅县| 襄城县| 德化县| 三台县| 托克托县| 同德县| 兴城市| 夏津县| 万州区| 巴里| 平度市| 吴堡县| 湖北省| 阜城县| 延长县| 临泉县| 裕民县| 安仁县| 阿巴嘎旗| 皮山县| 石景山区| 长治县| 扎鲁特旗| 亳州市| 绥化市| 大连市| 阿坝| 渭南市| 丰都县| 长汀县| 定兴县| 噶尔县| 商丘市| 道孚县| 涞源县| 疏附县| 道孚县|