C语言实现考试报名管理系统
本文实例为大家分享了C语言实现考试报名管理系统的具体代码,供大家参考,具体内容如下
源代码:
#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("身份证号:");
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请输入你要查找的身份证号码:");
scanf("%s" , id);
while(p != NULL) {
if(strcmp(id , p->id) == 0) {
printf("%s 的信息如下:\n" , p->name);
printf("身份证号:%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("身份证号:%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;
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
相关文章