C语言考试报名管理系统
南栀城边 人气:0源代码:
#include<stdio.h> #include<stdlib.h> #include<string.h> typedef struct node { char name[40]; char id[20]; char gender[10]; char age[10]; char tele[20]; struct node *pNext; } NODE , *PNODE; void InputElement(PNODE); PNODE CreatList(void); void FindList(PNODE); void AmendList(PNODE); void DeleteList(PNODE); void InsertList(PNODE); int main() { PNODE pHead = NULL; int opt; while(1) { system("cls"); printf("-------考试报名管理系统-------\n"); printf("1.录入考生信息\n"); printf("2.查找考生信息\n"); printf("3.修改考生信息\n"); printf("4.删除考生信息\n"); printf("5.插入考生信息\n"); printf("0.退出系统\n"); printf("请输入您的操作命令:"); scanf("%d" , &opt); switch(opt) { case 1: pHead = CreatList(); getchar(); getchar(); break; case 2: FindList(pHead); getchar(); getchar(); break; case 3: AmendList(pHead); getchar(); getchar(); break; case 4: DeleteList(pHead); getchar(); getchar(); break; case 5: InsertList(pHead); getchar(); getchar(); break; case 0: printf("\n已退出系统!\n"); exit(0); getchar(); getchar(); break; } } return 0; } void InputElement(PNODE p) { printf("姓名:"); scanf("%s" , p->name); printf("SFZ号:"); scanf("%s" , p->id); printf("性别:"); scanf("%s" , p->gender); printf("年龄:"); scanf("%s" , p->age); printf("电话号码:"); scanf("%s" , p->tele); } PNODE CreatList(void) { int i , len; PNODE pHead = (PNODE)malloc(sizeof(NODE)); PNODE pTail = pHead; pTail->pNext = NULL; printf("\n请输入报考学生的总人数:"); scanf("%d" , &len); for(i = 0; i < len ; i++) { printf("请输入第 %d 位考生的相关信息\n" , i + 1); PNODE p = (PNODE)malloc(sizeof(NODE)); InputElement(p); pTail->pNext = p; p->pNext = NULL; pTail = p; } return pHead; } void FindList(PNODE pHead) { char id[20]; PNODE p = pHead; printf("\n请输入你要查找的SFZ号码:"); scanf("%s" , id); while(p != NULL) { if(strcmp(id , p->id) == 0) { printf("%s 的信息如下:\n" , p->name); printf("SFZ号:%s\n" , p->id); printf("性别:%s\n" , p->gender); printf("年龄:%s\n" , p->age); printf("电话号码:%s\n" , p->tele); return; }else if(p->pNext == NULL) { printf("未找到考生的相关信息!\n"); return; } p = p->pNext; } return; } void AmendList(PNODE pHead) { char name[40]; PNODE p = pHead; printf("\n请输入你要修改的考生姓名:"); scanf("%s" , name); while(p != NULL) { if(strcmp(name , p->name) == 0) { printf("%s 的信息如下:\n" , p->name); printf("SFZ号:%s\n" , p->id); printf("性别:%s\n" , p->gender); printf("年龄:%s\n" , p->age); printf("电话号码:%s\n" , p->tele); printf("请输入修改后的考生信息:\n"); InputElement(p); printf("修改成功!\n"); return; }else if(p->pNext == NULL) { printf("未找到考生的相关信息!\n"); return; } p = p->pNext; } return; } void DeleteList(PNODE pHead) { char name[40]; PNODE p = pHead; PNODE q = p->pNext; printf("\n请输入要删除的考生姓名:"); scanf("%s" , name); while(strcmp(q->name , name) != 0) { p = q; q = p->pNext; if(q == NULL) { printf("未找到考生的相关信息!\n"); return; } } p->pNext = q->pNext; free(q); q = NULL; printf("删除成功!"); return; } void InsertList(PNODE pHead) { PNODE p = (PNODE)malloc(sizeof(NODE)); printf("\n请输入要插入的考生信息\n"); InputElement(p); p->pNext = pHead->pNext; pHead->pNext = p; printf("插入成功!\n"); return; }
加载全部内容