我没写,只能和你说说怎么写。
可以由类模板和数组写。
我说说类模板的吧。
定义一个Student类存放学生信息(姓名,初始排名,各科成绩,个人总分);
初始排名由输入顺序排,在计算名字的时候就可以通过冒泡排序。
在里面定义计算总分的函数。
下面定义一个Caozuo类,用学生链表的做。你可以去找下这个例子。
数组的就很简单了,你只要想想。先定义数组(姓名,成绩),总分就是个人每科成绩的和,下面5个函数都可以通过数组遍历实现。如
cout<<"请输入你要查询的学生的名字:"<
for(int i=0;i<=Maxsize;i++)
{
if(Student[i].name==n)
Student[i].Print();
}
你可以用office的 Access制作,网上有教程,或者直接用里面的模板,这东西最好自己弄,方便日后维护。
祝好运~
给你个程序,自己改总会吧!源程序是编译过的!
【【【【转】】】】
#include
#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);
}
excel就可以 很简单的啊