/**********************************************************************************************/
/***************************************学生信息管理系统***************************************/
/**********************************************************************************************/
//大体功能都成功版本。
#include <stdio.h>
/*结构体区*/
struct Ymk{
int id;
char name[20];
float score;
};
struct Ymk ymk[20];//保存每个学生信息
/*全局变量声明区*/
int count=0;//统计学生人数
/*函数声明区*/
int Student_Menu(void);//菜单界面
void Student_Add(void);//添加学生信息
void Student_See(void);//遍历学生信息
void Student_can(void);//查看某个学生的信息
void Student_Gai(void);//修改信息
void Student_Del(void);//删除
/*主函数区*/
int main()
{
printf("欢迎使用学生管理系统\n");
int res=0;
while(1)
{
res=Student_Menu();
switch(res)
{
case 1:Student_Add();break;
case 2:Student_Gai();break;
case 3:Student_can();break;
case 4:Student_See();break;
case 5:Student_Del();break;
case 6:return 0;
default:printf("你输入有误,请重新输入\n");
}
}
return 0;
}// /*********************************************************************************************
// @@@@:函数功能:系统菜单
// @@@@:返回值a
// @@@@:无参数
// @@@@:
// **********************************************************************************************/int Student_Menu(void)//菜单界面
{
int a;
printf("1.学生信息添加 \n");
printf("2.修改学生信息 \n");
printf("3.查看学生信息 \n");
printf("4.遍历学生信息 \n");
printf("5.删除学生信息 \n");
printf("6.退出管理系统 \n");
scanf("%d",&a);
getchar();
return a;
}// /*********************************************************************************************
// @@@@:函数功能:添加学生信息
// @@@@:无返回值
// @@@@:无参数
// @@@@:
// **********************************************************************************************/
void Student_Add(void)//添加学生信息
{
int i;
int num;
printf("添加学生信息界面\n");
printf("请输入学生学号\n");
scanf("%d",&num);
getchar();
//检查是否已存在学生信息
for(i=0;i<count;i++)
{
if(num==ymk[i].id)
{
printf("该学生已录入过信息\n");
return ;
}
}
if(i==count)//学号不存在,录入信息
{
ymk[count].id=num;
printf("请输入学生姓名\n");
scanf("%s",ymk[count].name);
getchar();
printf("请输入学生成绩\n");
scanf("%f",&ymk[count].score);
getchar();
count++;
printf("添加学生信息成功!\n");
return;
}
}
//遍历学生信息// /*********************************************************************************************
// @@@@:函数功能:遍历学生信息
// @@@@:无返回值
// @@@@:无参数
// @@@@:
// **********************************************************************************************/
void Student_See(void)//遍历学生信息
{
int i;
if(count>0)//判断系统里是否有学生信息
{
printf("姓名\t学号\t成绩\n");
for(i=0;i<count;i++)
{
printf("%s\t%d\t %.2f\n",ymk[i].name,ymk[i].id,ymk[i].score);
}
}
else
printf("系统内不存在学生信息,请选择添加学生信息\n");
return ;
}
// /*********************************************************************************************
// @@@@:函数功能:查看某个学生的信息
// @@@@:无返回值
// @@@@:无参数
// @@@@:
// **********************************************************************************************/
void Student_can(void)
{
int b=0;int i;
printf("请输入要查看学生的学号:\n");
scanf("%d",&b);
for(i=0;i<count;i++)
{
if(b==ymk[i].id)
{
printf("姓名\t学号\t成绩\n");
printf("%s\t%d\t %.2f\n",ymk[i].name,ymk[i].id,ymk[i].score);
return ;
}
else if(b!=ymk[i].id)
{
printf("你要查看的学生未录入信息!\n");
return ;
}
}
}
// /*********************************************************************************************
// @@@@:函数功能:修改学生信息
// @@@@:无返回值
// @@@@:无参数
// @@@@:
// **********************************************************************************************/void Student_Gai(void)
{
printf("请输入要修改的学生的学号");
int b,i;
scanf("%d",&b);
getchar();
for(i=0;i<count;i++)
{
if(b==ymk[i].id)
{
printf("请输入学生新的学号\n");
scanf("%d",&ymk[i].id);
getchar();
printf("请输入学生新的姓名\n");
scanf("%s",ymk[i].name);
getchar();
printf("请输入学生新的成绩\n");
scanf("%f",&ymk[i].score);
getchar();
printf("修改成功!\n");
return;
}
else if(b!=ymk[i].id)
{
printf("你要修改的学生的学号不存在,请选择添加");
return;
}
}
}
// /*********************************************************************************************
// @@@@:函数功能:删除某个学生的信息
// @@@@:无返回值
// @@@@:无参数
// @@@@:
// **********************************************************************************************/
void Student_Del(void)
{
printf("请输入要删除 的学生的学号");
int b,i,j;
int a=0;
float c=0;
char num[20];
scanf("%d",&b);
getchar();
for(i=0;i<count;i++)
{
if(b==ymk[i].id)
{
for(j=i;j<count;j++)
{
ymk[j]=ymk[j+1];
}
printf("删除成功!\n");
count--;
return;
}
else if(b!=ymk[i].id)
{
printf("你要删除的学生的学号不存在,请选择添加");
return;
}
}
}
简单大致写了一下,如有误,请忽略