怎么在C語言中利用鏈表實現(xiàn)學生管理系統(tǒng)

本篇文章給大家分享的是有關(guān)怎么在C語言中利用鏈表實現(xiàn)學生管理系統(tǒng),小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

站在用戶的角度思考問題,與客戶深入溝通,找到樅陽網(wǎng)站設(shè)計與樅陽網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:成都做網(wǎng)站、成都網(wǎng)站設(shè)計、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、國際域名空間、虛擬空間、企業(yè)郵箱。業(yè)務覆蓋樅陽地區(qū)。

#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;
};
/********創(chuàng)建學生信息**********/ 
Student * insert(Student * head){
  Student * s,*r;
  head=(Student *)malloc(sizeof(Student));
 printf("請輸入學生的個數(shù):");
  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("***歡迎進入學生管理系統(tǒng)***\n");
 printf("***1:請錄入學生信息***\n");
 printf("***2:請修改學生信息***\n");
 printf("***3:請刪除學生信息***\n");
 printf("***4:請查詢學生信息***\n");
 printf("***5:請?zhí)砑有聦W生信息**\n");
 printf("***6: 退出管理系統(tǒng) ***\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<<"請?zhí)砑有聦W生信息:"<<endl;
 add(head);
 break;
 } 
 default :
 break;
 }
 printf("請繼續(xù)輸入命令:"); 
 }
 Student *s,*r;
 s=head->next;
 while(s!=NULL){
 r=s->next;
 free(s);
 s=r;
 }
 free(head);
 return 0;
}

以上就是怎么在C語言中利用鏈表實現(xiàn)學生管理系統(tǒng),小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降摹OM隳芡ㄟ^這篇文章學到更多知識。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

名稱欄目:怎么在C語言中利用鏈表實現(xiàn)學生管理系統(tǒng)
鏈接URL:http://m.kartarina.com/article46/jedceg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗營銷型網(wǎng)站建設(shè)微信小程序云服務器面包屑導航Google

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司
主站蜘蛛池模板: 久久久久亚洲Av无码专| 综合无码一区二区三区| 色欲A∨无码蜜臀AV免费播| 在线看片无码永久免费视频| 无码日韩人妻精品久久蜜桃| 亚洲性无码AV中文字幕| 亚洲日韩精品一区二区三区无码| 精品无码免费专区毛片| 亚洲av无码专区在线观看素人| 西西午夜无码大胆啪啪国模| 无码人妻久久一区二区三区蜜桃| 国产成人无码AV麻豆| 中文字幕无码精品三级在线电影| 国内精品久久人妻无码不卡| 亚洲成av人片不卡无码| 亚洲Av综合色区无码专区桃色| 久久人妻无码一区二区| 亚洲人AV在线无码影院观看| 久久无码无码久久综合综合| 中文字幕人妻三级中文无码视频 | 久久精品国产亚洲AV无码娇色| 无翼乌工口肉肉无遮挡无码18| 亚洲一区二区无码偷拍| 精品无码人妻一区二区三区| 亚洲AV永久纯肉无码精品动漫 | 国产AV无码专区亚洲AV毛网站| gogo少妇无码肉肉视频| 97无码免费人妻超级碰碰夜夜| 久久av无码专区亚洲av桃花岛 | 国产成人精品无码一区二区老年人 | 亚洲人成人无码网www电影首页| 无码人妻aⅴ一区二区三区| 无码八A片人妻少妇久久| 人妻无码久久一区二区三区免费| 国产精品免费无遮挡无码永久视频| 一本色道无码道在线| 久久久久无码专区亚洲av| 亚洲av中文无码| 亚洲Av永久无码精品三区在线| 无码午夜人妻一区二区三区不卡视频| 无码人妻精品一区二区|