请大家帮忙做一下啦。我时间来不及,自己做不成啊,做不出来要挂科的啊。拜托了!!!
用C编的。不是C++,各位帮帮我。
以下是要求:
【题目描述】
请设计一个学生作业完成情况管理程序。
假设某门课程一学期要留10次作业,每次老师要进行批改,给出分数后还要进行登记。学期期末要根据每次作业的成绩计算出最终的平时成绩(满分100)。
该程序应该具有下列功能:
(1) 通过键盘输入某位学生某次作业的分数;
(2) 给定学号,显示某位学生作业完成情况;
(3) 给定某个班级的班号,显示该班所有学生的作业完成情况;
(4) 给定某位学生的学号,修改该学生的作业完成信息;
(5) 给定某位学生的学号,删除该学生的信息;
(6) 提供一些统计各类信息的功能。
【题目要求】
(1) 按照分析、设计、编码、调试和测试的软件开发过程完成这个应用程序;
(2) 作业登记信息应该包含:学号、姓名、10次作业的完成情况;
(3) 为各项操作功能设计一个菜单。应用程序运行后,先显示这个菜单,然后用户通过菜单项选择希望进行的操作项目。
【输入要求】
应用程序运行后,在屏幕上显示一个菜单(菜单显示外观见前面的图示)。用户可以根据需求,选定相应的操作项目。进入每个操作后,根据应用程序的提示信息,从键盘输入相应的信息。
【输出要求】
(1) 应用程序运行后,要在屏幕上显示一个菜单;
(2) 要求用户输入数据时,要给出清晰、明确的提示信息,包括输入的数据内容、格式及结束方式等。
【提示】
设计一个结构类型和一维数组类型,用来保存作业登记信息。
【实验步骤】
(1)装入给定程序模板,运行演示;
(2)根据题目要求,修改数据类型,添加必要的变量,实现功能(1)和(2),并进行调试;
(3)实现功能(3)和(4),并进行测试;
(4)实现功能(5)和(6),并进行调试;
(5)编写实验报告。
以下是老师给的模版:
附录3 程序模板
#include
#include
#define MUNMAX 5
struct studentInfo{ //结构类型定义
int num;
char* name;
char sex;
int age;
float score;
};
struct stuType{
studentInfo stu[MUNMAX];
int num;
};
void DisplayMenu();
int choiceItem();
void Init(struct stuType*);
void PrintInfo(struct stuType);
void Print_aInfo(struct stuType,int);
void Input_aInfo(struct studentInfo*);
void Input_allInfo(struct stuType*,int num);
int Search(struct stuType);
void Modify(struct stuType*);
void main()
{
struct stuType student;
int choice,index;
Init(&student);
do{
choice=choiceItem();
switch (choice){
case 0:printf("\nWelcome to");break;
case 1:Input_allInfo(&student,MUNMAX);break;
case 2:Input_allInfo(&student,1); break;
case 3:PrintInfo(student);break;
case 4:Init(&student);break;
case 5:if ((index=Search(student))!=-1)
Print_aInfo(student,index);
else printf("\n No eixst the student.");
break;
case 6:Modify(&student);break;
}
}while(choice);
}
void DisplayMenu() //显示菜单
{
printf("\n========= MENU =========");
printf("\n Input more student's informations ......... 1");
printf("\n Input a student's informations ............ 2");
printf("\n Print student's informations .............. 3");
printf("\n Init student's informations ............... 4");
printf("\n Search student's information .............. 5");
printf("\n Modify student's information .............. 6");
printf("\n exit system ............................... 0");
printf("\nchoice,please:");
}
int choiceItem() //菜单选择
{
int choice;
do{
DisplayMenu();
scanf("%d",&choice);
}while(choice<0||choice>6);
return choice;
}
void Init(struct stuType* s) //初始化
{
s->num=0;
}
void Print_aInfo(struct stuType s,int index) //输出一个学生的信息
{
printf("\n%4d %-16s",s.stu[index].num,s.stu[index].name);
if (s.stu[index].sex==0) putchar('f');
else putchar('m');
printf("%4d%6.1f",s.stu[index].age,s.stu[index].score);
}
void PrintInfo(struct stuType s) //输出所有学生的信息
{
if (s.num==0) {
printf("\nNo student.");
return;
}
for (int i=0;i printf("\n%4d %-16s",s.stu[i].num,s.stu[i].name);
if (s.stu[i].sex==0) putchar('f');
else putchar('m');
printf("%4d%6.1f",s.stu[i].age,s.stu[i].score);
}
}
void Input_aInfo(struct studentInfo* as) //输入一个学生的信息
{
scanf("%d",&as->num);
as->name=(char*)malloc(30);
scanf("%s",as->name);
as->sex=random(2);
as->age=random(10)+18;
as->score=random(100);
}
void Input_allInfo(struct stuType* s,int num) //输入多个学生的信息
{
printf("\nEnter %d infomations.\n",num);
for (int i=0;i if (s->num==MUNMAX){
printf("\nOverflow.");
break;
}
Input_aInfo(&s->stu[s->num++]);
}
}
int Search(struct stuType stu) //查找
{
int num;
printf("\nEnter num:");
scanf("%d",&num);
for (int i=0;i if (stu.stu[i].num==num)
return i;
return -1;
}
--------------------next---------------------
阅读(1404) | 评论(0) | 转发(0) |