
设计一个简单的学生成绩管理系统,
主要功能包括:1.输入学生的各科成绩;2.计算总分;3.计算平均分;4.计算名次(按平均分);5.可查询任一学生的成绩情况;6.计算可科目的优秀率和合格率。很急,求求你们...
主要功能包括:
1. 输入学生的各科成绩;
2. 计算总分;
3. 计算平均分;
4. 计算名次(按平均分);
5. 可查询任一学生的成绩情况;
6. 计算可科目的优秀率和合格率。
很急,求求你们帮帮忙…… 我这方面应该说一点都不懂,老师也只教了一点,我只会分析程序,不会编程序,麻烦有谁写出来一个……
刚学完结构体数组,用C++编程,最好用结构体,期末考试快到了,还要复习别的功课…… 帮帮忙啊…… 呀呀呀…… 展开
1. 输入学生的各科成绩;
2. 计算总分;
3. 计算平均分;
4. 计算名次(按平均分);
5. 可查询任一学生的成绩情况;
6. 计算可科目的优秀率和合格率。
很急,求求你们帮帮忙…… 我这方面应该说一点都不懂,老师也只教了一点,我只会分析程序,不会编程序,麻烦有谁写出来一个……
刚学完结构体数组,用C++编程,最好用结构体,期末考试快到了,还要复习别的功课…… 帮帮忙啊…… 呀呀呀…… 展开
展开全部
我没写,只能和你说说怎么写。
可以由类模板和数组写。
我说说类模板的吧。
定义一个Student类存放学生信息(姓名,初始排名,各科成绩,个人总分);
初始排名由输入顺序排,在计算名字的时候就可以通过冒泡排序。
在里面定义计算总分的函数。
下面定义一个Caozuo类,用学生链表的做。你可以去找下这个例子。
数组的就很简单了,你只要想想。先定义数组(姓名,成绩),总分就是个人每科成绩的和,下面5个函数都可以通过数组遍历实现。如
cout<<"请输入你要查询的学生的名字:"<<endl;
cin>>n;
for(int i=0;i<=Maxsize;i++)
{
if(Student[i].name==n)
Student[i].Print();
}
可以由类模板和数组写。
我说说类模板的吧。
定义一个Student类存放学生信息(姓名,初始排名,各科成绩,个人总分);
初始排名由输入顺序排,在计算名字的时候就可以通过冒泡排序。
在里面定义计算总分的函数。
下面定义一个Caozuo类,用学生链表的做。你可以去找下这个例子。
数组的就很简单了,你只要想想。先定义数组(姓名,成绩),总分就是个人每科成绩的和,下面5个函数都可以通过数组遍历实现。如
cout<<"请输入你要查询的学生的名字:"<<endl;
cin>>n;
for(int i=0;i<=Maxsize;i++)
{
if(Student[i].name==n)
Student[i].Print();
}
展开全部
你可以用office的 Access制作,网上有教程,或者直接用里面的模板,这东西最好自己弄,方便日后维护。
祝好运~
祝好运~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
给你个程序,自己改总会吧!源程序是编译过的!
【【【【转】】】】
#include<stdio.h>
#define SIZE 4
struct student_type
{
char num[11];
char name[8];
char Class[10];
int score[3];
float ave;
}stu[SIZE];
void main()
{
int i=1;
float ave;
void save();
void display();
for(i=1;i<=4;i++)
{
printf("\ninput info of student %d\nnum name class score[0] score[1] score[2]\n",i);
scanf("%s%s%s%d%d%d",&stu[i].num,&stu[i].name,&stu[i].Class,&stu[i].score[1],&stu[i].score[2],&stu[i].score[3]);
stu[i].ave=(stu[i].score[0]+stu[i].score[1]+stu[i].score[2])/3.00;
}
save();
display();
}
void save()
{
FILE *fp;
int i;
if((fp=fopen("score.txt","wb"))==NULL)
{printf("cannot open file\n");
return;
}
for(i=1;i<=4;i++)
fprintf(fp,"%s,%s,%s,%d,%d,%d,%.2f\n",stu[i].num,stu[i].name,stu[i].Class,stu[i].score[0],stu[i].score[1],stu[i].score[2],stu[i].ave);
fclose(fp);
}
void display()
{
int i;
FILE *fp;
fp=fopen("score.txt","r");
for(i=1;i<=4;i++)
{
fscanf(fp,"%s,%s,%s,%d,%d,%d,%.2f\n",&stu[i].num,&stu[i].name,&stu[i].Class,&stu[i].score[0],&stu[i].score[1],&stu[i].score[2],&stu[i].ave);
printf("%s,%s,%s,%d,%d,%d,%.2f\n",&stu[i].num,&stu[i].name,&stu[i].Class,&stu[i].score[0],&stu[i].score[1],&stu[i].score[2],&stu[i].ave);
}
fclose(fp);
}
【【【【转】】】】
#include<stdio.h>
#define SIZE 4
struct student_type
{
char num[11];
char name[8];
char Class[10];
int score[3];
float ave;
}stu[SIZE];
void main()
{
int i=1;
float ave;
void save();
void display();
for(i=1;i<=4;i++)
{
printf("\ninput info of student %d\nnum name class score[0] score[1] score[2]\n",i);
scanf("%s%s%s%d%d%d",&stu[i].num,&stu[i].name,&stu[i].Class,&stu[i].score[1],&stu[i].score[2],&stu[i].score[3]);
stu[i].ave=(stu[i].score[0]+stu[i].score[1]+stu[i].score[2])/3.00;
}
save();
display();
}
void save()
{
FILE *fp;
int i;
if((fp=fopen("score.txt","wb"))==NULL)
{printf("cannot open file\n");
return;
}
for(i=1;i<=4;i++)
fprintf(fp,"%s,%s,%s,%d,%d,%d,%.2f\n",stu[i].num,stu[i].name,stu[i].Class,stu[i].score[0],stu[i].score[1],stu[i].score[2],stu[i].ave);
fclose(fp);
}
void display()
{
int i;
FILE *fp;
fp=fopen("score.txt","r");
for(i=1;i<=4;i++)
{
fscanf(fp,"%s,%s,%s,%d,%d,%d,%.2f\n",&stu[i].num,&stu[i].name,&stu[i].Class,&stu[i].score[0],&stu[i].score[1],&stu[i].score[2],&stu[i].ave);
printf("%s,%s,%s,%d,%d,%d,%.2f\n",&stu[i].num,&stu[i].name,&stu[i].Class,&stu[i].score[0],&stu[i].score[1],&stu[i].score[2],&stu[i].ave);
}
fclose(fp);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询