C语言程序——职工信息管理系统

2024-11-25 22:06:28
推荐回答(1个)
回答1:

貌似这么大的系统很难有人帮你做,这儿有个学生管理系统,稍加修改就成了~

/*学生成绩管理系统*/
/*系统版本号:2006build 400.0201b*/
/*内核:adobo*/

#include
#include
#include
#include
#define N 32
int total=N; //定义全局变量,学生的总个数total
struct student
{
int xh;
char xm[6];
int yw;
int sx;
int yy;
int jsj;
int zf;
};
struct student stu[N],temp;

char get_key() //得到用户按键值
{
char key;
while (1)
{
if (kbhit())
{
key=getch();
break;
}
}
return key;
}

void wait() //按键等待,相当于PAUSE的功能
{
char key;
while (1)
{
if (kbhit())
{
key=getche();
break;
}
}
}

int id_search(int num) //查询该学号学生的数组编号
{
int i;
for (i=0;i if (stu[i].xh==num) break;
return i;
}
void show_one(int id) //显示某学号学生的信息
{
cout< cout<<"--------------------------------------------------------------"< cout<<"⑴学号:"< cout<<"⑵姓名:"< cout<<"⑶语文:"< cout<<"⑷数学:"< cout<<"⑸英语:"< cout<<"⑹计算机:"< cout<<"⑺总分:"< cout<<"--------------------------------------------------------------"<}
void show_all() //显示所有学生的信息
{
int i;
cout<<"--------------------------------------------------------------"< cout<<"学号\t"<<"姓名\t"<<"语文\t"<<"数学\t"<<"英语\t"<<"计算机\t"<<"总分"< for (i=0;i cout<
cout<<"--------------------------------------------------------------"<}
void cj_input() //输入学生的成绩
{
int i;
cout< cout<<"--------------------------------------------------------------"< cout<<"※学生成绩信息录入菜单※"< cout<<"◎请完整输入学生个人信息"< cout<<"◎学号项键入0可结束编辑"< cout<<"--------------------------------------------------------------"< for (i=0;i {
cout<<"请输入第"< cin>>stu[i].xh;
if (stu[i].xh==0) return; //用户输入0时,结束编辑
cout<<"请输入第"< cin>>stu[i].xm;
cout<<"请输入第"< cin>>stu[i].yw;
cout<<"请输入第"< cin>>stu[i].sx;
cout<<"请输入第"< cin>>stu[i].yy;
cout<<"请输入第"< cin>>stu[i].jsj;
stu[i].zf=stu[i].yw+stu[i].sx+stu[i].yy+stu[i].jsj;
cout<<"---------------提示:学号项键入 0可结束编辑----------------"< }
}
void auto_input() //自动输入学生的成绩,为测试方便而设
{
int i;
for (i=0;i {
stu[i].xh=(i+1);
strcpy(stu[i].xm,"ayc");
stu[i].yw=rand()%100;
stu[i].sx=rand()%100;
stu[i].yy=rand()%100;
stu[i].jsj=rand()%100;
stu[i].zf=stu[i].yw+stu[i].sx+stu[i].yy+stu[i].jsj;
}
}
void cj_modify() //学生成绩的修改
{
int num,id;
char choice;
cout< cout<<"--------------------------------------------------------------"< cout<<"※学生成绩信息修改菜单※"< cout<<"◎请确认已经录入学生信息"< cout<<"◎学号不存在即会返回菜单"< cout<<"--------------------------------------------------------------"< cout<<"请输入待修改的学生的学号:";
cin>>num;
id=id_search(num);
if (id==total)
{
cout< cout<<"-〖系统提示〗------------------------"< cout<<" 错误!无该学号学生信息!"< cout<<"-------------------------------------"< wait();
return;
}
cout<<"选择要修改的项目的编号,其它值返回:";
show_one(id);
choice=get_key();
if (choice=='1')
{cout<<"输入新的学号:";
cin>>stu[id].xh;
}
else if (choice=='2')
{cout<<"输入新的姓名:";
cin>>stu[id].xm;
}
else if (choice=='3')
{cout<<"输入新的语文成绩:";
cin>>stu[id].yw;
}
else if (choice=='4')
{cout<<"输入新的数学成绩:";
cin>>stu[id].sx;
}
else if (choice=='5')
{cout<<"输入新的英语成绩:";
cin>>stu[id].yy;
}
else if (choice=='6')
{
cout<<"输入新的计算机成绩:";
cin>>stu[id].jsj;
}
stu[id].zf=stu[id].yw+stu[id].sx+stu[id].yy+stu[id].jsj;
if (choice=='1'||choice=='2'||choice=='3'||choice=='4'||choice=='5'||choice=='6')
{
cout<<"-〖系统提示〗------------------------"< cout<<" 已成功修改该学生信息!";
cout<<"-------------------------------------"< show_one(id);
wait();
}

}

void cj_delete() //学生信息的删除
{
int num,id,i;
cout< cout<<"--------------------------------------------------------------"< cout<<"※学生成绩信息删除菜单※"< cout<<"◎请确认已经录入学生信息"< cout<<"◎学号不存在即会返回菜单"< cout<<"--------------------------------------------------------------"< cout<<"请输入要删除的学生学号:";
cin>>num;
id=id_search(num);
if (id==total)
{
cout< cout<<"-〖系统提示〗------------------------"< cout<<" 错误!无该学号学生信息!"< cout<<"-------------------------------------"< wait();
return;
}
show_one(id);
for (i=id;i stu[i]=stu[i+1];
total=total-1;
cout< cout<<" 学 生 成 绩 显 示 菜 单 "< show_all();
cout< cout<<"-〖系统提示〗------------------------"< cout<<" 已成功删除该学生的信息!"< cout<<"-------------------------------------"<
wait();

}
void func_1() //录入编辑菜单
{
char choice;
while(1)
{
system("cls");
cout<<" 学 生 成 绩 管 理 系 统 "< cout<<"=============================================================="< cout<<" ⑴录入成绩 "< cout<<" ⑵修改成绩 "< cout<<" ⑶删除成绩 "< cout<<" ⑷返回上级 "< cout<<"--------------------------------------------------------------"< cout<<" 键入相应数字项进行功能选择(1-4) "< choice=get_key();
if (choice=='1') cj_input(); //这里为测试方便,自动输入了成绩,注意改回
else if (choice=='2') cj_modify();
else if (choice=='3') cj_delete();
else if (choice=='4') break;
}
}
void show_person() //个人成绩查询
{
int num,id;
cout< cout<<"--------------------------------------------------------------"< cout<<"※学生成绩信息修改菜单※"< cout<<"◎请确认已经录入学生信息"< cout<<"◎学号不存在即会返回菜单"< cout<<"--------------------------------------------------------------"< cout<<"请输入要查询的学生学号:";
cin>>num;
id=id_search(num);
if (id==total)
{
cout< cout<<"-〖系统提示〗------------------------"< cout<<" 错误!无该学号学生信息!"< cout<<"-------------------------------------"< wait();
return;
}

show_one(id);
wait();
}
void cj_pm() //生成名次,即按照总分输出
{
int i,j;
for (j=0;j {
for (i=0;i {
if (stu[i].zf {
temp=stu[i];
stu[i]=stu[i+1];
stu[i+1]=temp;
}
}
}
cout< cout<<" 学 生 成 绩 显 示 (按 总 分) "< show_all();
wait();
}
void cj_xh() //按照学号输出
{
int i,j;
for (j=0;j {
for (i=0;i {
if (stu[i].xh>stu[i+1].xh)
{
temp=stu[i];
stu[i]=stu[i+1];
stu[i+1]=temp;
}
}
}
cout< cout<<" 学 生 成 绩 显 示 (按 学 号) "< show_all();
wait();
}

void cj_bk() //生成补考名单
{

int i;
cout<<" 补 考 名 单 "< cout<<"=============================================================="< cout<<"学号\t"<<"姓名\t"<<"语文\t"<<"数学\t"<<"英语\t"<<"计算机\t"< for (i=0;i {
if ((stu[i].yw<60)||(stu[i].sx<60)||(stu[i].yy<60)||(stu[i].jsj<60))
{
cout< if(stu[i].yw<60) cout<<"补考\t";
else cout<<'\t';
if(stu[i].sx<60) cout<<"补考\t";
else cout<<'\t';
if(stu[i].yy<60) cout<<"补考\t";
else cout<<'\t';
if(stu[i].jsj<60) cout<<"补考\t"< else cout< }
}

cout<<"--------------------------------------------------------------"< wait();

}

void func_2() //成绩查询统计
{
char choice;
while(1)
{
system("cls");
cout<<" 学 生 成 绩 管 理 系 统 "< cout<<"=============================================================="< cout<<" ⑴个人成绩查询 "< cout<<" ⑵班级排名查询 "< cout<<" ⑶生成补考名单 "< cout<<" ⑷返回上级 "< cout<<"--------------------------------------------------------------"< cout<<" 键入相应数字项进行功能选择(1-4) "< choice=get_key();
if (choice=='1') show_person();
else if (choice=='2') cj_pm();
else if (choice=='3') cj_bk();
else if (choice=='4') break;
}
}
void func_3() //成绩打印与输出
{
char choice;
while(1)
{
system("cls");
cout<<" 学 生 成 绩 管 理 系 统 "< cout<<"=============================================================="< cout<<" ⑴按学号输出 "< cout<<" ⑵按总分输出 "< cout<<" ⑶返回上级 "< cout< cout<<"--------------------------------------------------------------"< cout<<" 键入相应数字项进行功能选择(1-3) "< choice=get_key();
if (choice=='1') cj_xh();
else if (choice=='2') cj_pm();
else if (choice=='3') break;
}
}

int main() //主函数开始
{
char choice;
while(1)
{
system("cls");
cout<<" 学 生 成 绩 管 理 系 统 "< cout<<"=============================================================="< cout<<" ⑴成绩录入与编辑 "< cout<<" ⑵成绩查询与统计 "< cout<<" ⑶成绩打印与输出 "< cout<<" ⑷退出本管理系统 "< cout<<"--------------------------------------------------------------"< cout<<" 键入相应数字项进行功能选择(1-4) "< choice=get_key();
if (choice=='1') func_1();
else if (choice=='2') func_2();
else if (choice=='3') func_3();
else if (choice=='4') break;
}
system("cls"); //版权信息
cout<<"***************[关于本系统]***************"<}