设计开发一个学生成绩管理系统。要求具有以下功能

a)运行程序后显示以下信息:1、Displayallinformation2、Addastudent3、Deleteastudent4、Quitb)按2选择增加或者按3删... a) 运行程序后显示以下信息:1、Display all information
2、Add a student
3、Delete a student
4、Quit
b) 按2选择增加或者按3删除学生信息。包括学生姓名、学号、三门课程成绩。
c) 按1后进行简单数据处理并输出所有信息,包括: 计算每个学生的平均成绩、总成绩;每一门课程的平均成绩。
d) 按4退出程序,释放所有内存。

实在是不会...
展开
 我来答
冰山珀西
2012-03-08 · TA获得超过3390个赞
知道小有建树答主
回答量:1673
采纳率:0%
帮助的人:411万
展开全部
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int sign=0;
typedef struct student
{
int no;
char name[10];
float grade[3];
}STUDENT;

STUDENT stu[10];

void display()
{
puts("学号、名字、总成绩:");
for(int i=0;i<sign;i++)
{
float all=(stu[i].grade[0]+stu[i].grade[1]+stu[i].grade[2]);
printf("%d\t%s\t%f\n",stu[i].no,stu[i].name,all);
}
}
void add()
{
puts("请输入信息:");
scanf("%d%s%f%f%f",&stu[sign].no,stu[sign].name,&stu[sign].grade[0],&stu[sign].grade[1],&stu[sign].grade[2]);
sign++;
}
void dele()
{
puts("请输入学号:");
int a;
scanf("%d",&a);
for(int i=0;i<sign;i++)
if(a==stu[i].no)
{
stu[i].no=stu[sign].no;
strcpy(stu[i].name,stu[sign-1].name);
stu[i].grade[0]=stu[sign-1].grade[0];
stu[i].grade[1]=stu[sign-1].grade[1];
stu[i].grade[2]=stu[sign-1].grade[2];
}
sign--;
}

void main()
{
int flag;
do
{
flag=1;
printf("make a select:\n1.Display all information\n2.Add a student\n3.Delete a student\n4.Quit\n");
int n;
scanf("%d",&n);
switch(n)
{
case 1:system("CLS");display();break;
case 2:add();system("CLS");break;
case 3:dele();system("CLS");break;
case 4:flag=0;system("CLS");break;
default:
{
system("CLS");
printf("输入有误,请重新输入:\n");
}
}
}while(flag);
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
北京千智道科技
2023-07-27 广告
实训室设计方案需要考虑多方面因素,包括实训室的功能、设备配置、网络结构、环境仿真实训等。以下是一个基本的实训室设计方案:1. 功能设计:根据实训室的需求,确定所需的功能,例如计算机系统集成规范标准、基本技能、工程项目的学习和实践等。2. 设... 点击进入详情页
本回答由北京千智道科技提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式