新手求解用c++编写一道题目
题目:某学院教学信息管理系统功能:1、每一条记录包括一位教师的职工号、姓名、职称、性别、3门主讲课程(课程名称、开课学期、课程性质(学位与非学位课)和教学效果),教学效果...
题目:某学院教学信息管理系统
功能:1、每一条记录包括一位教师的职工号、姓名、职称、性别、3门主讲课程(课程名称、开课学期、课程性质(学位与非学位课)和教学效果),教学效果综合评分。
2、输入功能:可以一次完成若干条记录的输入。
3、显示功能:完成全部教师记录的显示。
4、查找功能:完成按姓名或课程查找教师的相关记录,并显示。
5、排序功能:按职工号或教学效果综合评分进行排序。
6、插入功能:按教学效果综合评分高低插入一条教师记录。
7、将教师记录存在文件中。
8、应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观!
要求:1、用C语言实现系统;
2、利用结构体数组实现教学信息的数据结构设计;
3、系统具有增加,查询,插入,排序等基本功能;
4、系统的各个功能模块要求用函数的形式实现;
5、将教学信息存在文件中。
用c++哦!我们只学了c++呢 展开
功能:1、每一条记录包括一位教师的职工号、姓名、职称、性别、3门主讲课程(课程名称、开课学期、课程性质(学位与非学位课)和教学效果),教学效果综合评分。
2、输入功能:可以一次完成若干条记录的输入。
3、显示功能:完成全部教师记录的显示。
4、查找功能:完成按姓名或课程查找教师的相关记录,并显示。
5、排序功能:按职工号或教学效果综合评分进行排序。
6、插入功能:按教学效果综合评分高低插入一条教师记录。
7、将教师记录存在文件中。
8、应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观!
要求:1、用C语言实现系统;
2、利用结构体数组实现教学信息的数据结构设计;
3、系统具有增加,查询,插入,排序等基本功能;
4、系统的各个功能模块要求用函数的形式实现;
5、将教学信息存在文件中。
用c++哦!我们只学了c++呢 展开
2个回答
展开全部
c语言课程设计_学生成绩管理搭搭系统
/*学生成绩管理*/
/*Borland C下编译通过,调试过程中不要输入大数字*/
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
int INDEX[32];
struct STUDENT
{
int id,age,chinese,math,english;
char name[21];
}students[32];
void page_title(char *menu_item)
{
clrscr();
printf(">>> 学 生 管 理 系 统 <<<\n\n- %s -\n\n",menu_item);
}
void return_confirm(void)
{
printf("\n按任意键返回……\n");
getch();
}
void student_new(void)
{
int n;
page_title("录入学生基本信息");
for(n=0;n<32;n++)
if(students[n].id==0) break;
printf("学号:");
scanf("%d",&students[n].id);
printf("姓名:");
scanf("%s",&students[n].name);
printf("年龄:");
scanf("%d",&students[n].age);
return_confirm();
}
int search_id(void)
{
int n,i;
printf("请输入学生学号:");
scanf("%d",&i);
for(n=0;n<32;n++)
{
if(students[n].id==i&&students[n].id!=0)
{
printf("学号:%d\n",students[n].id);
printf("姓名:%s\n"知搜拿,students[n].name);
printf("年龄:%d\n",students[n].age);
return n;
}
}
printf("\n输入错误或学号不存在.\n");
return -1;
}
void student_del(void)
{
int n;
page_title("注销学生基本信息");
if((n=search_id())!=-1) students[n].id=0;
printf("\n!该学生已注销.\n");
return_confirm();
}
void student_edit(void)
{
int n;
page_title("编辑学生基本信息");
if((n=search_id())!=-1)
{
printf("\n请重新输入新信息:\n学号:");
scanf("%d",&students[n].id);
printf("姓名:");
scanf("%s",&students[n].name);
printf("年龄:");
scanf("%d",&students[n].age);
}
return_confirm();
}
void score_input(void)
{
int s,n,t;
page_title("录入成绩");
printf("\n请用数字键选择科目\n1-语文 2-数学 3-英语\n");
scanf("%d",&s);
for(n=0;n<32;n++)
{
if(students[n].id!=0)
{
printf("学号:%d 姓名:%s 成绩:",students[n].id,students[n].name);
scanf("%d",&t);
switch(s)
{
case 1 : students[n].chinese=t;break;
case 2 : students[n].math=t;break;
case 3 : students[n].english=t;break;
}
}
}
return_confirm();
}
void score_edit(void)
{
int n;
page_title("修改成绩");
if((n=search_id())!=-1)
{
printf("漏瞎语文:%d 数学:%d 英语:%d\n",students[n].chinese,students[n].math,students[n].english);
printf("\n请重新输入成绩:\n语文:");
scanf("%d",&students[n].chinese);
printf("数学:");
scanf("%s",&students[n].math);
printf("英语:");
scanf("%d",&students[n].english);
}
return_confirm();
}
void sort_it(char nn)
{
int n,m,p,x,t[32];
for(n=0;n<32;n++)
{
switch(nn)
{
case '1' : t[n]=students[n].id;break;
case '2' : t[n]=students[n].chinese;break;
case '3' : t[n]=students[n].math;break;
case '4' : t[n]=students[n].english;break;
case '5' : t[n]=students[n].chinese+students[n].math+students[n].english;break;
}
}
for(n=0;n<32;n++)
{
x=0;
p=-1;
for(m=0;m<32;m++)
{
if(t[m]>x)
{
x=t[m];
p=m;
}
}
t[p]=-1;
INDEX[n]=p;
}
}
void browser(void)
{
int n,x;
char k;
sort_it('1');
while(1)
{
page_title("浏览");
printf("按数字键选择排序方式或按 0 返回\n");
printf("学号-1\t姓名\t\t年龄\t语文-2\t数学-3\t英语-4\t总分-5\n");
for(n=0;n<32;n++)
{
if(INDEX[n]!=-1)
{
x=INDEX[n];
printf("%d\t%s\t",students[x].id,students[x].name);
printf("%d\t%d\t",students[x].age,students[x].chinese);
printf("%d\t%d\t",students[x].math,students[x].english);
printf("%d\n",students[x].chinese+students[x].math+students[x].english);
}
}
k=getch();
if(k<'6'&&k>'0') sort_it(k);
else if(k=='0') break;
else continue;
}
}
void main(void)
{
menu: page_title("操作选单");
printf("请用数字键选择操作\n\n");
printf("1 录入学生基本信息\n2 修改学生基本信息\n");
printf("3 注销学生基本信息\n\n4 录入成绩\n5 修改成绩\n\n");
printf("6 浏览...\n \n0 退出\n");
switch(getch())
{
case '1' : student_new();break;
case '2' : student_edit();break;
case '3' : student_del();break;
case '4' : score_input();break;
case '5' : score_edit();break;
case '6' : browser();break;
case '0' : exit(0);
}
goto menu;
}
/*学生成绩管理*/
/*Borland C下编译通过,调试过程中不要输入大数字*/
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
int INDEX[32];
struct STUDENT
{
int id,age,chinese,math,english;
char name[21];
}students[32];
void page_title(char *menu_item)
{
clrscr();
printf(">>> 学 生 管 理 系 统 <<<\n\n- %s -\n\n",menu_item);
}
void return_confirm(void)
{
printf("\n按任意键返回……\n");
getch();
}
void student_new(void)
{
int n;
page_title("录入学生基本信息");
for(n=0;n<32;n++)
if(students[n].id==0) break;
printf("学号:");
scanf("%d",&students[n].id);
printf("姓名:");
scanf("%s",&students[n].name);
printf("年龄:");
scanf("%d",&students[n].age);
return_confirm();
}
int search_id(void)
{
int n,i;
printf("请输入学生学号:");
scanf("%d",&i);
for(n=0;n<32;n++)
{
if(students[n].id==i&&students[n].id!=0)
{
printf("学号:%d\n",students[n].id);
printf("姓名:%s\n"知搜拿,students[n].name);
printf("年龄:%d\n",students[n].age);
return n;
}
}
printf("\n输入错误或学号不存在.\n");
return -1;
}
void student_del(void)
{
int n;
page_title("注销学生基本信息");
if((n=search_id())!=-1) students[n].id=0;
printf("\n!该学生已注销.\n");
return_confirm();
}
void student_edit(void)
{
int n;
page_title("编辑学生基本信息");
if((n=search_id())!=-1)
{
printf("\n请重新输入新信息:\n学号:");
scanf("%d",&students[n].id);
printf("姓名:");
scanf("%s",&students[n].name);
printf("年龄:");
scanf("%d",&students[n].age);
}
return_confirm();
}
void score_input(void)
{
int s,n,t;
page_title("录入成绩");
printf("\n请用数字键选择科目\n1-语文 2-数学 3-英语\n");
scanf("%d",&s);
for(n=0;n<32;n++)
{
if(students[n].id!=0)
{
printf("学号:%d 姓名:%s 成绩:",students[n].id,students[n].name);
scanf("%d",&t);
switch(s)
{
case 1 : students[n].chinese=t;break;
case 2 : students[n].math=t;break;
case 3 : students[n].english=t;break;
}
}
}
return_confirm();
}
void score_edit(void)
{
int n;
page_title("修改成绩");
if((n=search_id())!=-1)
{
printf("漏瞎语文:%d 数学:%d 英语:%d\n",students[n].chinese,students[n].math,students[n].english);
printf("\n请重新输入成绩:\n语文:");
scanf("%d",&students[n].chinese);
printf("数学:");
scanf("%s",&students[n].math);
printf("英语:");
scanf("%d",&students[n].english);
}
return_confirm();
}
void sort_it(char nn)
{
int n,m,p,x,t[32];
for(n=0;n<32;n++)
{
switch(nn)
{
case '1' : t[n]=students[n].id;break;
case '2' : t[n]=students[n].chinese;break;
case '3' : t[n]=students[n].math;break;
case '4' : t[n]=students[n].english;break;
case '5' : t[n]=students[n].chinese+students[n].math+students[n].english;break;
}
}
for(n=0;n<32;n++)
{
x=0;
p=-1;
for(m=0;m<32;m++)
{
if(t[m]>x)
{
x=t[m];
p=m;
}
}
t[p]=-1;
INDEX[n]=p;
}
}
void browser(void)
{
int n,x;
char k;
sort_it('1');
while(1)
{
page_title("浏览");
printf("按数字键选择排序方式或按 0 返回\n");
printf("学号-1\t姓名\t\t年龄\t语文-2\t数学-3\t英语-4\t总分-5\n");
for(n=0;n<32;n++)
{
if(INDEX[n]!=-1)
{
x=INDEX[n];
printf("%d\t%s\t",students[x].id,students[x].name);
printf("%d\t%d\t",students[x].age,students[x].chinese);
printf("%d\t%d\t",students[x].math,students[x].english);
printf("%d\n",students[x].chinese+students[x].math+students[x].english);
}
}
k=getch();
if(k<'6'&&k>'0') sort_it(k);
else if(k=='0') break;
else continue;
}
}
void main(void)
{
menu: page_title("操作选单");
printf("请用数字键选择操作\n\n");
printf("1 录入学生基本信息\n2 修改学生基本信息\n");
printf("3 注销学生基本信息\n\n4 录入成绩\n5 修改成绩\n\n");
printf("6 浏览...\n \n0 退出\n");
switch(getch())
{
case '1' : student_new();break;
case '2' : student_edit();break;
case '3' : student_del();break;
case '4' : score_input();break;
case '5' : score_edit();break;
case '6' : browser();break;
case '0' : exit(0);
}
goto menu;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询