以前写过的一个东西,
晒出来与楼主分享,
这种东西也就练手的时候有心情去写,
现在楼主想让大家现成写,
我看够呛。。
/**************************欢迎进入学生管理系统****************************************/
/**************************************************************************************/
/**************************************************************************************/
/*函数声明******************************************************************************/
#include "stdlib.h"
#include "stdio.h"
#include "string.h"
#include "math.h"
void main_menu();
void search_menu();
void search_num();
void search_name();
void search_sex();
void search_birthday();
void search_address();
void search_nativeplace();
void search_rp();
void delete_student();
void add_student();
void modify_student();
void show_student();
void show_head();
void return_menu();
void return_main_menu();
int count=50; /*班级人数小于50 */
char admin[10]={"123"}; /*管理员 */
char xx[300]; /* It is to hit the xx sauce */
char xx1[300]; /* It is to hit the xx sauce */
char xx2[300]; /* It is to hit the xx sauce */
char xx3[300]; /* It is to hit the xx sauce */
char xx4[300];
char xx5[300];
char xx6[300];
char xx7[300];
/****************************************************************************/
//****************************************
//*
*
//*
建 立 学 生 结 构 体
*
//*
*
//****************************************
/****************************************************************************/
struct student
{
char num[12];
char name[4];
char sex;
char birthday[8];
char nativeplace[50];
char address[50];
char rp[50];
};
struct student stu[50]=
{
{"00000000000","a",'a',"0000000","neimenggu","neikeda","jiangxuejin"},
/*Omit information */
};
/****************************************************************************/
//****************************************
//*
*
//*
显
示 所 有 学
生
信
息
*
//*
*
//****************************************
/****************************************************************************/
void show_head()
{
char head[500]={"学号
\t姓名
性别
出生年月
籍贯 \t 所在院系、专业
\t奖惩信息
\t"};
printf("*****************************所有信息************************************* \n ");
printf("%s \n",head);
}
/****************************************************************************/
//****************************************
//*
*
//*
显
示
学
生
信
息
*
//*
*
//****************************************
/*************************************************************************/
void show_student(struct student s)
{
printf("%-13s",s.num);
printf("%-4s\t",s.name);
printf("%-4c",s.sex);
printf("%-8s\t",s.birthday);
printf("%-7s\t",s.nativeplace);
printf("%-16s\t",s.address);
printf("%-12s\n",s.rp);
}
/****************************************************************************/
//****************************************
//*
*
//*
返
回
菜
单
*
//*
*
//****************************************
/****************************************************************************/
void return_menu()
{
int j;
printf("\n *********★**★*********************★************************★**★*********\n\n");
printf("\t\t╭----------------------------------------------╮\n");
printf("\t\t|
管
理
员
系
统
|\n");
printf("\t\t|----------------------------------------------|\n");
printf("\t\t|
1. 返回查找菜单
|\n");
printf("\t\t|
|\n");
printf("\t\t|
2. 返回主菜单
|\n");
printf("\t\t|
|\n");
printf("\t\t|
3. 退出程序
|\n");
printf("\t\t╰----------------------------------------------╯\n");
printf("\t\t 请您正确选择,按回车以继续:");
scanf("%d",&j);
if(j==1)
search_menu();
if(j==2)
main_menu();
if(j==3)
exit(0);
if(j>3 || j<1)
{
printf("您输入的信息有误! \n");
system("reset");
return_menu();
}
}
/****************************************************************************/
//****************************************
//*
*
//*
返
回
主
菜
单
*
//*
*
//****************************************
/****************************************************************************/
void return_main_menu()
{
int j;
printf("\n *********★**★*********************★************************★**★*********\n\n");
printf("\t\t╭----------------------------------------------╮\n");
printf("\t\t|
系
统
提
示
|\n");
printf("\t\t|----------------------------------------------|\n");
printf("\t\t|
1. 返回主菜单
|\n");
printf("\t\t|
|\n");
printf("\t\t|
2. 退出程序
|\n");
printf("\t\t╰----------------------------------------------╯\n");
printf("\t\t 请您正确选择,按回车以继续:");
scanf("%d",&j);
if(j==1)
{
system("reset");
main_menu();
}
if(j==2)
{
system("reset");
printf("如果您有问题请联系客服 。我们将竭诚为你服务。\n");
printf("谢谢使用,再会。\n");
exit(0);
}
}
/****************************************************************************/
//****************************************
//*
*
//*
查
找
菜
单
*
//*
*
//****************************************
/**********************************************************************/
void search_menu()
{ int i;
system("reset"); /*the function maybe wrong ----clear function系统重置 */
while(1)
{
printf("\n *********★**★*********************★************************★**★*********\n\n");
printf("\t\t╭----------------------------------------------╮\n");
printf("\t\t|
查
找
方
式
|\n");
printf("\t\t|----------------------------------------------|\n");
printf("\t\t|
1. 学号查找
|\n");
printf("\t\t|
|\n");
printf("\t\t|
2. 姓名查找
|\n");
printf("\t\t|
|\n");
printf("\t\t|
3. 性别查找
|\n");
printf("\t\t|
|\n");
printf("\t\t|
4. 电话查找
|\n");
printf("\t\t|
|\n");
printf("\t\t|
5. 地址查找
|\n");
printf("\t\t|
|\n");
printf("\t\t|
6. 返回主菜单
|\n");
printf("\t\t╰----------------------------------------------╯\n");
printf("\t\t 请您正确选择,按回车以继续:");
scanf("%d",&i);
if(i==1)
search_num();
if(i==2)
search_name();
if(i==3)
search_sex();
if(i==4)
search_birthday();
if(i==5)
search_address();
if(i==6)
main_menu();
if(i<1 || i>6)
{
printf("您输入的数据有误,请重新输入。\n ");
system("reset");
continue;
}
}
}
/****************************************************************************/
//****************************************
//*
*
//*
学
号
查
找
*
//*
*
//****************************************
/*************************************************************************/
void search_num()
{ int i,j=0;
system("reset");
printf("input student's number: example:0000000\n");
scanf("%s",xx);
show_head();
for(i=0;i<count;i++)
if(strcmp(stu[i].num,xx)==0)
{ show_student(stu[i]);j++; }
if(j==0)
printf("没有相应学生信息!\n");
printf("*******************************************************\n");
return_menu();
}
/****************************************************************************/
//****************************************
//*
*
//*
姓
名
查
找
*
//*
*
//****************************************
/*******************************************************/
void search_name()
{
int i,k,j=0;
system("reset");
printf("input student's name: example:Count \n");
scanf("%s",xx);
for(k=0;xx[k]!='\0';k++)
xx1[k]=xx[k]-32;
xx1[k]='\0';
show_head();
for(i=0;i<count;i++)
if(strcmp(stu[i].name,xx)==0 || strcmp(stu[i].name,xx1)==0)
{ show_student(stu[i]); j++;}
if(j==0)
{
printf("没有相应学生信息! \n");
search_menu();
}
printf("*******************************************************");
}
/*****************************************************************/
//****************************************
//*
*
//*
性
别
查
找
*
//*
*
//****************************************
/****************************************************************************/
void search_sex()
{
int i,j=0;char k='f';
system("reset");
printf("input student's sex: example:f \n");
getchar(); /* cache question. */
scanf("%c",&k);
show_head();
for(i=0;i<count;i++)
if(stu[i].sex==k || stu[i].sex==k-32)
{
show_student(stu[i]);
j++;
}
if(j==0)
{
printf("Not the student's information \n ");
return_menu();
}
printf("*******************************************************");
}
/****************************************************************************/
//****************************************
//*
*
//*
出
生
日
期
查
找
*
//*
*
//****************************************
/**********************************************************************/
void search_birthday()
{
int i,j=0;
system("reset");
printf("输入学生生日,如:20121212\n");
scanf("%s",xx3);
show_head();
for(i=0;i<count;i++)
if(strcmp(stu[i].birthday,xx3)==0)
{
show_student(stu[i]);j++; }
if(j==0)
{
printf("没有对应学生信息 \n ");
return_menu();
}
printf("*******************************************************");
}
/****************************************************************************/
//****************************************
//*
*
//*
籍
贯
查
找
*
//*
*
//****************************************
/***********************************************************************/
void search_nativeplace()
{
int i,j=0;
system("reset"); /*the function maybe wrong ----clear function系统重置 */
printf("输入学生籍贯,如:内蒙古 \n");
scanf("%s",xx);
show_head();
for(i=0;i<count;i++)
if(strcmp(stu[i].nativeplace,xx)==0)
{ show_student(stu[i]);j++; }
if(j==0)
{
printf("没有相应学生信息! \n");
return_menu();
}
printf("*******************************************************");
}
/****************************************************************************/
//****************************************
//*
*
//*
院
系
专
业
查
找
*
//*
*
//****************************************
/***********************************************************************/
void search_address()
{
int i,j=0;
system("reset"); /*the function maybe wrong ----clear function系统重置 */
printf("input student's address: example:jiangxi \n");
scanf("%s",xx);
show_head();
for(i=0;i<count;i++)
if(strcmp(stu[i].address,xx)==0)
{ show_student(stu[i]);j++; }
if(j==0)
{
printf("没有相应学生信息! \n");
return_menu();
}
printf("*******************************************************");
}
/****************************************************************************/
//****************************************
//*
*
//*
籍
贯
查
找
*
//*
*
//****************************************
/***********************************************************************/
void search_rp()
{
int i,j=0;
system("reset"); /*the function maybe wrong ----clear function系统重置 */
printf("请输入奖惩信息:如:奖学金 \n");
scanf("%s",xx);
show_head();
for(i=0;i<count;i++)
if(strcmp(stu[i].rp,xx)==0)
{ show_student(stu[i]);j++; }
if(j==0)
{
printf("没有相应学生信息\n ");
return_menu();
}
printf("*******************************************************");
}
/****************************************************************************/
//****************************************
//*
*
//*
删
除
学
生
信
息
*
//*
*
//****************************************
/*************************************************************************/
void delete_student()
{
int i,j=0,x;
system("reset"); /*the function maybe wrong ----clear function系统重置 */
printf("input student's num: example:0000000 \n");
scanf("%s",xx);
printf("input student's name: example:Count \n");
scanf("%s",xx1);
for(i=0;i<count;i++)
if(strcmp(stu[i].num,xx)==0 && strcmp(stu[i].name,xx1)==0)
{ for(x=i;x<=count-2;x++)
stu[x]=stu[x+1];
j++;
count=count-1;
}
if(j==0)
{
printf("没有相应学生信息! \n");
return_main_menu();
}
if(j!=0)
{
system("reset");
printf("\n\t★**★
恭
喜
您
删
除
成
功!
★**★\n\n");
return_main_menu();
}
}
/****************************************************************************/
//****************************************
//*
*
//*
增
加
学
生
信
息
*
//*
*
//****************************************
/************************************************************/
void add_student()
{
char k;
system("reset"); /*the function maybe wrong ----clear function系统重置 */
printf("请输入学号:
");
scanf("%s",xx);
printf("请输入姓名: ");
scanf("%s",xx1);
printf("请输入性别: ");
getchar(); /* cache question. */
scanf("%c",&k);
printf("请输入出生年月:
");
scanf("%s",xx3);
printf("请输籍贯:");
scanf("%s",xx4);
printf("请输入院系及专业:");
scanf("%s",xx5);
printf("请输入学奖惩信息:");
scanf("%s",xx6);
strcpy(stu[count].num,xx);
strcpy(stu[count].name,xx1);
stu[count].sex,k;
strcpy(stu[count].birthday,xx4);
strcpy(stu[count].nativeplace,xx5);
strcpy(stu[count].address,xx6);
strcpy(stu[count].rp,xx7);
count=count+1;
printf("添加成功! \n ");
return_main_menu();
}
/****************************************************************************/
//****************************************
//*
*
//*
修
改
学
生
信
息
*
//*
*
//****************************************
/********************************************************************/
void modify_student()
{
int i,j=0;char k;
system("reset"); /*the function maybe wrong ----clear function系统重置 */
printf("请输入学号,如:00000000000\n");
scanf("%s",xx);
printf("请输入姓名,如:张三 \n");
scanf("%s",xx1);
for(i=0;i<count;i++)
if(strcmp(stu[i].num,xx)==0 && strcmp(stu[i].name,xx1)==0)
{
printf("input student's new num: example:0000000 \n");
getchar(); /* cache question. */
gets(stu[i].num);
printf("input student's new name: example:Count \n");
gets(stu[i].name);
printf("input student's new sex: example:f \n");
getchar(); /* cache question. */
scanf("%c",&k);
printf("input student's new birthday: example:2101041992******34 \n");
gets(stu[i].birthday);
printf("input student's new address example:jiangxi \n");
gets(stu[i].address);
printf("modify information success! \n ");
j++;
return_menu();
}
if(j==0)
{
printf("Not the student's information,modify information failed!");
return_main_menu();
}
}
/****************************************************************************/
//****************************************
//*
*
//*
主
界
面:(完成)
*
//*
*
//****************************************
/****************************************************************************/
void main_menu()
{
char traver[20];int s;
int i,j;
printf("\n\t\t★---您好,欢迎进入11级学生信息管理系统!---★\n");
printf("\n\n\n");
printf("\t\t╭----------------------------------------------╮\n");
printf("\t\t|
学
生
信
息
管
理
系
统
|\n");
printf("\t\t|----------------------------------------------|\n");
printf("\t\t|
1. 显示学生信息(仅限管理员)
|\n");
printf("\t\t|
|\n");
printf("\t\t|
2. 查找学生信息
|\n");
printf("\t\t|
|\n");
printf("\t\t|
3. 删除学生信息
|\n");
printf("\t\t|
|\n");
printf("\t\t|
4. 添加学生信息
|\n");
printf("\t\t|
|\n");
printf("\t\t|
5. 修改学生信息
|\n");
printf("\t\t|
|\n");
printf("\t\t|
6.退出管理系统
|\n");
printf("\t\t╰----------------------------------------------╯\n");
printf("\t\t 请您正确选择,按回车以继续:");
scanf("%d",&i);
printf("\n"); while(1)
{
if(i==1)
while(1)
{
printf("请输入管理员密码:
");
scanf("%s",traver);
if(strcmp(traver,admin)==0)
{
printf("****************显示所有学生信息**************** \n");
show_head();
for(s=0;s<count;s++)
show_student(stu[s]);
return_main_menu();
}
else
{
system("reset");
printf("\t\t您输入的用户名和密码有误或不存在\n");
printf("\n ★**★ 1.重新输入用户名
★
2.返回上一级菜单
★
3.退出该系统
★**★\n\n");
printf("\t\t 请您正确选择,按回车以继续:");
scanf("%d",&j);
if(j==1)
continue;
if(j==2)
{ system("reset");
main_menu();
}
if(j==3)
{ system("reset");
printf("如果您有问题请联系客服.我们将竭诚为你服务。\n");
printf("谢谢使用,再会。\n");
exit(0);
}
if(j>3 || j<1)
continue;
}
}
if(i==2)
search_menu();
if(i==3)
delete_student();
if(i==4)
add_student();
if(i==5)
modify_student();
if(i==6)
{
system("reset"); /*the function maybe wrong ----clear function系统重置 */
printf("如果您有问题请联系客服xx。我们将竭诚为你服务。\n");
printf("谢谢使用,再会。\n");
exit(0);
}
if(i<1 || i>6)
{
printf("您输入的数据有误,请重新输入。\n ");
system("reset");
continue;
}
}
}
/****************************************************************************/
/*主函数*********************************************************************/
int main()
{
main_menu();
return 0;
}
/******************************************************************************/