文档库 最新最全的文档下载
当前位置:文档库 › C++成绩管理系统实验报告(含源代码)

C++成绩管理系统实验报告(含源代码)

C++成绩管理系统实验报告(含源代码)
C++成绩管理系统实验报告(含源代码)

学生成绩管理系统设计报告

一、需求分析:

用数组或链表数据结构完成一个学生成绩管理系统,此系统的具体功能要求如下:

(1)学生信息录入功能

1)用户从键盘输入每个学生的信息:学号、姓名、性别、数学、英语、政治、程序设计基础、物理五门课成绩。

2)可插入一个或多个学生信息到当前编辑的班级数据中。

3) 可删除一个或多个学生信息。

●(2)文件保存功能

1)学生信息每一班存为一个数据文件,数据文件可在程序中打开、编辑和重新保存。

2)用户输入学生信息可随时保存数据文件。

(3)文件打开功能

1)程序只能对当前打开的数据文件进行编辑。

(4)查询功能

用户录入每个学生每门课程的分数;

●能够计算每个学生的各门功课总分和平均分,并按总分将成绩排序,显示每个学生的总

分和排名;

●计算全班各门功课的平均分,显示每门课程中低于平均分的每一个学生的学号,姓名,

性别,科目,成绩等信息;

●显示每门科目中,成绩在90分以上的学生信息。另外还输出每门科目中不及格的学生

信息;

●能按姓名或者学号查找,增加,删除和保存各个学生的信息。

(5)报表输出功能

1) 按学号输出一个班学生信息:学号、姓名、性别、数学、英语、政治、

程序设计基础、物理成绩和总成绩,到屏幕和文件。

2) 按总成绩输出从高到低输出学号、姓名信息。

注:以上功能以菜单形式供用户使用,并有一定的容错功能。

二、概要设计

整体框架:

整个学生成绩管理系统采用链表作为基本数据结构,创建一个类student用于保存学生的数据且是链表中的一个节点。类list作为保存整个链表之用。主函数通过switch语句来根据用户的需要连接各个模块,以实现用户的需要。

模块基本介绍:

1.用户输入模块

在此模块中,用户将根据菜单提示结合自己的需求输入一个0~11的值,来实现一定的功能。

2.学生信息录入模块

此模块可以让用户从键盘输入每个学生的信息:学号、姓名、性别、数学、英语、政治、程序设计基础、物理五门课成绩。用户可插入一个或多个学生信息到当前编辑的班级数据中。用户可删除一个或多个学生信息。

3.文件保存功能模块

用户在确定以录入的成绩无误之后,可以将学生信息以每一班为单位存为一个数据文件。用户输入的学生信息可随时保存数据文件。

4.文件打开功能模块

用户可以用此模块将数据文件在程序中打开、编辑,程序只能对当前打开的数据文件进行编辑。

5.查询功能模块

在此模块里,用户可实现以下操作:1.浏览所有学生信息;2.按学号查询学生信息;3.按姓名查询学生信息;4.查询一个班每个人的总成绩和平均成绩; 5.查询一个班某一门课每个人的总成绩和平均成绩;6)进行成绩的统计分析:包括总人数,每门课的最高成绩、最低成绩、平均成绩、各个分数段的人数(100-90、89-80、79-70、69-60、59-50、50以下)、及格人数。

6.报表输出功能模块

在此模块中,用户可以浏览所有学生的信息,或者可以按学号输出一个班学生信息:学号、姓名、性别、数学、英语、政治、程序设计基础、物理成绩和总成绩,到屏幕和文件。也可以按总成绩输出从高到低输出学号、姓名信息。

模块图:

三、详细设计

主要功能模块的算法设计思路:

1. 用户输入模块设计

提示用户输入一个0~11的值,并存储在一个整型变量m中。

2. 学生信息录入模块设计

通过应用list中的instu()函数,来新建一个链表中的节点,即一个新的学生信息,来进行成绩的录入功能。成绩修改功能,可以根据姓名或学号进行查询并修改相应的课程的成绩,使用了void search(char s[10],int)和void search1(char s[20],int)函数进行操作。search函数根据姓名查找,search1函数根据学号进行查找。因为学号和姓名,都是存储在字符数组中的,所以都是通过字符串的比较进行查找的。然后根据整形参数进行对应的课程成绩的修改。成绩删除功能,也是可以根据姓名或学号进行删除,查询的算法和成绩修改功能的查询方法是一样的,当找到要删除的节点时,因为节点都是在堆内存中保存的,所以可以直接delete掉,并将前一个节点的next指针指向被删掉的节点的next指针所指向的节点。

3. 文件保存功能模块

先提示用户输入保存文件的文件名及班级名称。文件的前两行分别是班级名称和成绩单的开头,然后通过ofstream变量output来进行学生信息的输出,一项一项的输出,并设定格式,直到输出节点为NULL为止,之后关闭output。

4. 文件打开功能模块

先提示用户输入要打开的数据文件的名称,然后通过一个ifstream变量input 来进行文件操作。首先判断文件是否存在,如果不存在则输出"File does not exist",并跳出switch语句。文件存在的话,则可以进行数据的存入了。因为数据文件具有固定的格式,即开头两行是班级名称和表头,则可以先用两次input.getline(temp,80);语句来将input设置到第三行,此时可以将数据通过input 读入链表中。先用input.eof()判断文件中是否有数据,若有数据,则进行数据的读入,直到文件结束。

5. 查询功能模块

可以根据姓名或学号进行查找,搜索方法和前几个模块相同。通过outstu1(char *n)和outstu(char *n)来进行输出。总成绩和平均成绩的查询通过函数void outsum(char *)和void outsum1(char *)来完成。通过函数scanall()来浏览所有学生的信息。通过函数think()来进行成绩的统计分析。

6. 报表输出功能模块

通过建立一个新的类class stucopy用于拷贝student的数据,并实现排序功能。创建一个stucopy stu[M]数组,将原链表的数据拷贝与数组中,然后用选择排序方法将数组排序,然后用output按照标准的格式输出或保存为数据文件。

四、程序结构

源代码:

# include # include # include

#include //用getch(); using namespace std;

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌Student 类﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌ class Student { public: char name[20]; char Id[20];

int Cnum; //C++课程得分 int Mnum; //数学课程得分 int Enum; //英语课程得分 int sum; //总分 Student * Next; void Input() { cout<<"\t\t 请输入学生的姓名:"; cin>>name; cout<<"\t\t 请输入学生的学号:"; cin>>Id; cout<<"\t\t 请输入C++课程的成绩:"; cin>>Cnum; cout<<"\t\t 请输入数学课程的成绩:"; cin>>Mnum;

cout<<"\t\t 请输入英语课程的成绩:"; cin>>Enum;

学生成绩管理系统

操作 查询

成绩统计

按总成绩排名

录入 增加 删除 修改

总成绩查询

姓名

每个学生的平均成绩 各科不及格的人数

输出所有学生的成绩

sum=Cnum+Mnum+Enum;

}

void ReadFile(istream & in)

{

in>>name>>Id>>Cnum>>Mnum>>Enum>>sum;

}

void Show()

{

cout<<"姓名:"<

}

};

//﹌﹌﹌﹌﹌﹌﹌﹌﹌Studentmassage类﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

class Studentmassage

{

public:

Studentmassage();

~Studentmassage();

void ShowMenu();

void Find();

void Save();

void ModifyItem();

void RemoveItem();

void Swap(Student *,Student *);

void Sort();

//void Unpass();

int ListCount();

//void Average();

void Display()

{

for(Student * p=Head->Next;p!=End;p=p->Next)

p->Show();

cout<<"输入任意字符!继续……";

getch();

}

void AddItem()

{

End->Input();

End->Next=new Student;

End=End->Next;

cout<<"添加成功!"<

cout<<"输入任意字符!继续……";

getch();

}

private:

Student * Head,* End;

ifstream in;

ofstream out;

Student *FindItem(char * name)

{

for(Student * p=Head;p->Next!=End;p=p->Next)//匹配成功则返回上一个指针,不成功就返回空

if(!strcmp(p->Next->name,name))

return p;

return NULL;

}

Student *FindID(char * Id)

{

for(Student * p=Head;p->Next!=End;p=p->Next)//匹配成功则返回上一个指针,不成功就返回空

if(!strcmp(p->Next->Id,Id))

return p;

return NULL;

}

};

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌构造函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌Studentmassage::Studentmassage()

{

Head=new Student;

Head->Next=new Student;

End=Head->Next;

in.open("sort.txt");

if(!in)

cout<<"这是一个新系统,无学生信息。请先输入。"<

else

{

while(!in.eof())

{

End->ReadFile(in);

if(End->name[0]=='\0')

break;

End->Next=new Student;

End=End->Next;

}

in.close();

cout<<"\t\t读取学生信息成功!"<

}

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌析构函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌Studentmassage::~Studentmassage()

{

Save();

for(Student * temp;Head->Next!=End;)

{

temp=Head->Next;

Head->Next=Head->Next->Next;

delete temp;

}

delete Head,End;

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌菜单﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

void Studentmassage::ShowMenu()

{

cout<<"******************************************************************** ************"<

cout<<"〒〒〒〒〒〒〒〒〒〒☆学生成绩管理系统☆〒〒〒〒〒〒〒〒〒〒"<

cout<<"〒〒〒〒〒〒〒★★★★★★★★★★★★★★★★★〒〒〒〒〒〒〒"<

cout<<"〒〒〒〒〒〒〒〒〒★☆ 1.增加学生成绩☆★〒〒〒〒〒〒〒〒〒"<

cout<<"〒〒〒〒〒〒〒〒〒★☆ 2.显示学生成绩☆★〒〒〒〒〒〒〒〒〒"<

cout<<"〒〒〒〒〒〒〒〒〒★☆ 3.排序统计成绩☆★〒〒〒〒〒〒〒〒〒"<

cout<<"〒〒〒〒〒〒〒〒〒★☆ 4.查找学生成绩☆★〒〒〒〒〒〒〒〒〒"<

cout<<"〒〒〒〒〒〒〒〒〒★☆ 5.删除学生成绩☆★〒〒〒〒〒〒〒〒〒"<

cout<<"〒〒〒〒〒〒〒〒〒★☆ 6.修改学生信息☆★〒〒〒〒〒〒〒〒〒"<

cout<<"〒〒〒〒〒〒〒〒〒★☆0.安全退出系统☆★〒〒〒〒〒〒〒〒〒"<

cout<<"\n\t\t\n\t\t请选择:";

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌查找函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

void Studentmassage::Find()

{

char name[20] ,Id[10];

int x;

Student * p=NULL;

cout<<"\n\t\t*********************************\n";

cout<<"\t\t※1.按学生的姓名查找\n\t\t※2.按学生学号查找";

cout<<"\n\t\t*********************************\n请选择:";

cin>>x;

switch(x)

{

case 1:{cout<<"\t\t请输入要查找的学生的姓名:";cin>>name;

if(p=FindItem(name))

{

p->Next->Show();

cout<<"输入任意字符!继续……";

getch();

}

else

{

cout<<"\t\t没有找到该姓名的学生!"<<'\n'<

cout<<"输入任意字符!继续……";

getch();

}

}

break;

case 2:

{

cout<<"\t\t请输入要查找的学生的学号:";cin>>Id;

if(p=FindID(Id))

{

p->Next->Show();

cout<<"输入任意字符!继续……";

getch();

}

else

{

cout<<"\t\t没有找到该学好的学生!"<<'\n'<

cout<<"输入任意字符!继续……";

getch();

}

}break;

}

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌修改信息﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌void Studentmassage::ModifyItem() //修改信息

{

char name[20];

Student * p=NULL;

cout<<"\t\t请输入要修改的人的姓名:";cin>>name;

if(p=FindItem(name))

{

cout<<"\t\t已找到学生的信息,请输入新的信息!"<

p->Next->Input();

cout<<"修改成功!"<

cout<<"输入任意字符!继续……";

getch();

}

else

{

cout<<"\t\t没有找到!"<

cout<<"输入任意字符!继续……";

getch();

}

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌删除信息﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

void Studentmassage::RemoveItem() // 删除信息

{

char name[20];

Student * p=NULL,*temp=NULL;

cout<<"\t\t请输入要删除的学生的姓名:"<>name;

if(p=FindItem(name))

{

temp=p->Next;

p->Next=p->Next->Next;

delete temp;

cout<<"\t\t删除成功!"<

cout<<"输入任意字符!继续……";

getch();

}

else

{

cout<<"\t\t没有找到!"<

cout<<"输入任意字符!继续……";

getch();

}

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

void Studentmassage::Swap(Student *p1, Student *p2)//交换两个combox变量的数据域{

Student *temp=new Student;

strcpy(temp->name,p1->name);

strcpy(temp->Id,p1->Id);

temp->Cnum=p1->Cnum;

temp->Mnum=p1->Mnum;

temp->Enum=p1->Enum;

temp->sum=p1->sum;

strcpy(p1->name,p2->name);

strcpy(p1->Id,p2->Id);

p1->Cnum=p2->Cnum;

p1->Mnum=p2->Mnum;

p1->Enum=p2->Enum;

p1->sum=p2->sum;

strcpy(p2->name,temp->name);

strcpy(p2->Id,temp->Id);

p2->Cnum=temp->Cnum;

p2->Mnum=temp->Mnum;

p2->Enum=temp->Enum;

p2->sum=temp->sum;

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

int Studentmassage::ListCount()//统计当前链表的记录总数,返回一个整数{

if(! Head)

return 0;

int n=0;

for(Student * p=Head->Next;p!=End;p=p->Next)

{

n++;

}

return n;

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

void Studentmassage::Sort()//对当前链表进行排序

{

cout <<"Sorting..."<

Student *p=NULL,*p1=NULL,*k=NULL;

int n=Studentmassage::ListCount();

if(n<2)

return;

for(p=Head->Next;p!=End;p=p->Next)

for(k=p->Next;k!=End;k=k->Next)

{

if(p->sum>k->sum)

{

Studentmassage::Swap(p,k);

}

}

cout <<"排序完成!"<

getch();

return;

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌保存函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

void Studentmassage::Save()

{

out.open("sort.txt");

for(Student *p=Head->Next;p!=End;p=p->Next)

out<name<<"\t"<Id<<"\t"<Cnum<<"\t"<Mnum<<"\t"<Enum <<"\t"<sum<<'\n';

out.close();

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌主函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

int main()

{

int x,i=0;

bool quit=false;

cout<<"\t\t§§§§§§§§§§§§§§§§§§§§§§§§§§"<

for(i=0;i<3;i++)

cout<<"\t\t◎\t\t\t\t\t\t ◎"<

cout<<"\t\t◎★★★★【欢迎进入学生成绩管理系统】★★★★◎"<

for(i=0;i<3;i++)

cout<<"\t\t◎\t\t\t\t\t\t ◎"<

cout<<"\t\t§§§§§§§§§§§§§§§§§§§§§§§§§§\n"<

Studentmassage Grade;

cout<<"按任意键开始……";

getch();

while(!quit)

{

//system("cls");

Grade.ShowMenu();

cin>>x;

switch(x)

{

case 0:quit=true;break;

case 1:Grade.AddItem();break;

case 2:Grade.Display();break;

case 3:Grade.Sort();break;

case 4:Grade.Find();break;

case 5:Grade.RemoveItem();break;

case 6:Grade.ModifyItem();break;

}

}

return 0;

}

c简单学生成绩管理系统c课程设计

c简单学生成绩管理系统 c课程设计 The document was prepared on January 2, 2021

C++学生成绩管理系统 要求用C++语言编写学生成绩管理系统,要求能进行添加删除修改输入输出等的操作,并能使用面相对像原理对此系统进行实现。 学生成绩管理系统分析: 学生成绩管理系统分为8个模块,分别是:添加学生信息,输出学生成绩,查找学生成绩,修改学生成绩,删除学生成绩,学生成绩排序,保存数据到文件和读取文件中学生成绩的模块。 各个子函数功能及其流程:

1.首先定义一个学生类Class Student;并定义其各个私有变量和公有函数 2.Student();构造函数,用于初始化学生类中的各个变量并记录 3.Add();函数:用于添加学生信息的函数包括学号姓名成绩等的内容 4.Output();函数:用于输出学生信息,包括学号姓名各科及总分平均成绩 5.Find();函数:用于查找学生各项信息。

6.modify();函数:用于修改学生各项信息。 7.delete();函数:用于删除学生信息。

();函数:对学生各项信息进行排序操作。 8.save()和load();函数:将学生信息保存到文件中,并在需要的时候调用该文 件将其中的学生信息显示出来

9.“=”“<<”“>>”符号的重载:在各个函数处理数据过程中对这些的调用处理函数源代码: 此函数源代码在VisualC++环境下编译通过。具体如下: #include"" #include"" #include"" #include"" #include"" #include"" #include"" class student ame,n1)==0) { temp=stu[j]; f3=1; } } if(f3==0) cout<<"对不起,没有你要查找的学生成绩"<

学生成绩管理系统详细操作过程

学生成绩管理系统 我将把我的实现步骤完整的写出来,我是在VC 6.0版本下用MFC实现的。 我创建的基于单文档的应用程序,过程不介绍,大家都会。下面的是我系统菜单: 思路: 刚进入系统时,只有“登录”菜单可用,其他三个菜单项都是灰色不可用的。当用户点“进入系统”菜单项时,用户输入用户名、密码和用户类型,系统将根据相应的用户权限使相应的菜单可用,并且“进入系统”菜单项变为不可用。如:如果用户类型是学生,那么只有学生权限菜单可用,而“教师权限”和“管理员权限”都不可用,同时“进入系统”变为不可用。 “学生权限”下只有“查询成绩”,因为学生只可以查询自己相应的成绩;“教师权限”下有“查询学生成绩”和“增改删学生成绩”两个菜单项,因为教师除了可以查询学生成绩还可以增加、修改和删除学生成绩;“管理员权限”下有“管理学生”和“管理教师”两个菜单项。 整体设计: 因为我们要设置系统菜单的状态,所以必须在CMainFrame中添加相应的函数和代码,具体步骤如下: 【步骤1】由于系统要使用ODBC类操作数据库,所以需要在stdafx.h中加入代码: #include 【步骤2】在CMainFrame中的OnCreat()中添加代码如下,实现菜单的初始化工作,当用户没进入系统之前,只有“登陆”菜单下的“进入系统”菜单项可用,而“退出系统”和其他3个权限菜单都不可用,即都是灰色的。 int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) { //使“退出系统”和其他3个权限菜单都不可用,即都是灰色的 GetMenu()->GetSubMenu(0)-> EnableMenuItem(1,MF_BYPOSITION | MF_DISABLED | MF_GRAYED); GetMenu()-> EnableMenuItem(1,MF_BYPOSITION | MF_DISABLED | MF_GRAYED); GetMenu()-> EnableMenuItem(2,MF_BYPOSITION | MF_DISABLED | MF_GRAYED); GetMenu()-> EnableMenuItem(3,MF_BYPOSITION | MF_DISABLED | MF_GRAYED); } 【步骤3】在CMainFrame中添加自己定义的函数void SetMenuSta(int type),此函数在登陆对话框的OnOK()中被调用,即当用户进入系统后使“进入系统”

c语言学生成绩管理系统含源代码

C 语言程序设计作业 一设计项目:学生成绩管理系统 二总体设计: 2:模块功能说明: 1 输入功能:输入学生姓名学号及成绩。 2 查看功能:输出姓名学号及各科成绩。 3 查询功能:通过学号查询学生姓名及各科成绩。 4 统计功能:统计班级学生及格率,优秀率,各个学生成绩方差等。 5 修改功能:通过输入学号修改指定学生的错误信息。 6添加功能:添加学生信息。 7删除功能:通过输入学号输入指定学生信息。 8保存功能:将学生信息保存。 9 退出系统。 3:主要函数之间的调用关系及各自功能: 主要函数的函数原型 void inputscore(void); void savescore(void); void avergescore(void); void modifyscore(void); void lookscore(void); void searchscore(void); void statistic(void); void add(void); void modify(void);

void delscore(void); void menu(void); i.在菜单界面输入1,调用函数inputscore( )实现输入学生成绩信息功能。ii.在菜单界面2,调用函数lookscore( )实现学生成绩按平均分高低排序输。 出,同时lookscore()函数调用avergescore()函数实现各个学生平均分的计 算。 iii.在菜单界面输入3,调用searchscore()函数实现通过学号查找学生成绩信息功能。 iv.在菜单界面输入4,调用statistic()函数输出班级及格率,优秀率,学生成绩方差,不及格学生名单。 v.在菜单界面输入5,调用modify()函数实现通过学号修改学生成绩的功能vi.在菜单界面输入6,调用add()函数实现添加学生成绩。 vii.在菜单界面输入7,调用delscore()函数实现删除指定学生成绩。 viii.在菜单界面输入8,调用savescore()函数将学生成绩信息保存。 ix.在菜单界面输入9,退出成绩管理系统。

学生成绩管理信息系统1

1 学生成绩管理信息系统 学生成绩管理系统 一.系统分析

1.现状分析 随着计算机应用的普及和迅雷般的飞速发展,信息化必然成为世界发展的潮流和趋势。信息化正在以前所未有的速度影响着人类 的方方面面,同时对传统教育的改革也起到了推动作用。 在今天的中国,信息化迅速发展,信息化必然走进校园。在学校众多管理工作中,学生的成绩管理原来越重要。然而传统的工作方

式如手工修改和查询成绩是一项非常繁重 而枯燥的工作,经常耗费很大财力和人力。数据量大时,将不可避免的出现失误。因此,学生成绩管理工作的信息化是十分必要的。学生成绩管理系统是利用现代的信息技术,实现学生信息资源的共享,实现学生信息与社会其他信息的有机联系,促进学生成绩管理工作的科学化、现代化,提高学生管理工作的效率。 2.系统需求分析 通过调查,要求系统具有以下功能: 1) 任课教师可以录入所教课程的成绩 2) 成绩的上传和下载 3) 教务处即系导员能够统计成绩

4) 成绩的发布和查询 5) 用户权限的限定 3系统的可行性分析 1)技术可行性分析 该系统选择微软公司的Visual Basic 6.0作为系统开发工具,主要是因为它是一个快速可视化程序开发工具软件且功能强大,主要表现为:所见即所得的界

面设计,尤其是数据窗口能方便而间接操纵数据库的智能化对象,基于对象的设计方法,极短的软件开发周期,较易的代码维护,同时还有众多的Active控制,提高了软件的使用效率。 连接采用SQL Server数据库,SQL Server是一种关系数据库工具,关系数据库已开发的最通用的数据库之一。该数据库能汇集各种信息以供查询、存储和检索。它是一种使用广泛的数据库管理系统,具有许多优点:易用性、适合分布组织科伸缩性、用于决策支持的数据库功能等。. 2)经济可行性分析 从经济角度分析,学生成绩系统所耗费的资源非常的少。目前,计算机越来越普及,大部分

C语言课程设计-学生成绩管理系统-完整版

#include<> #include<> #include<> #include<> /* strcmp函数原型包含*/ #define N 100 /*定义最大学生人数为100*/ struct student /*学生结构体定义*/ { char no[11]; /*学号,10位*/ char name[10];/*姓名,3个汉字*/ char grade[10];/*班级*/ char pro[20];/*专业*/ float score[5];/*储存5门功课的成绩*/ float ave;/*储存平均分*/ int year;/*入学年*/ }stu[N]; int num; void panduani(int); /*通过i的值,判断信息要查找的信息是否存在*/ void output(); /*输出学生成绩函数(公共函数)*/ void init(); /*系统初始化函数*/ void newfile(); /*建立新的数据文件*/ void read1(); /*从数据文件中读取数据*/ void weihu(); /*维护界面函数*/ void new1(); /*新增一个学生成绩函数*/ void xiugai(); /*修改学生成绩*/ void xgcj(int); /*修改成绩*/

void delete1(); /*删除学生信息函数*/ void tongji(); /*统计界面函数*/ void tongji1(); /*计算每个学生平均分*/ void tongji2(); /*计算每门课程的平均分*/ void paixu1(); /*排序函数*/ void paino(); /*按学号排序*/ void paiave(); /*按平均分排序*/ void paidkcj(); /*按单科成绩排序*/ void change(int,int); /*交换结构体数组中的两个记录*/ void outputx(int); /*选择输出单科成绩*/ void find1(); /*查找界面函数*/ int find(char sno[]); /*按学号查找*/ int findname(char cname[]);/*按姓名查找*/ void findyear(int cyear); /*按入学年查找*/ void save(); /*保存文件*/ void stop(); /*停顿函数*/ void stop() /*停顿函数(公共函数)*/ { printf("Press Any Key To Continue...\n"); getchar(); } void output() /*输出学生成绩函数(公共函数)*/ { int i,j;

学生成绩管理信息系统

学生成绩管理系统 一.系统分析 1.现状分析 随着计算机应用的普及和迅雷般的飞速发展,信息化必然成为世界发展的潮流和趋势。信息化正在以前所未有的速度影响着人类的方方面面,同时对传统教育的改革也起到了推动作用。 在今天的中国,信息化迅速发展,信息化必然走进校园。在学校众多管理工作中,学生的成绩管理原来越重要。然而传统的工作方式如手工修改和查询成绩是一项非常繁重而枯燥的工作,经常耗费很大财力和人力。数据量大时,将不可避免的出现失误。因此,学生成绩管理工作的信息化是十分必要的。学生成绩管理系统是利用现代的信息技术,实现学生信息资源的共享,实现学生信息与社会其他信息的有机联系,促进学生成绩管理工作的科学化、现代化,提高学生管理工作的效率。 2.系统需求分析 通过调查,要求系统具有以下功能: 1) 任课教师可以录入所教课程的成绩 2) 成绩的上传和下载 3) 教务处即系导员能够统计成绩 4) 成绩的发布和查询 5) 用户权限的限定 3系统的可行性分析 1)技术可行性分析 该系统选择微软公司的Visual Basic 作为系统开发工具,主要是因为它是一个快速可视化程序开发工具软件且功能强大,主要表现为:所见即所得的界面设计,尤其是数据窗口能方便而间接操纵数据库的智能化对象,基于对象的设计方法,极短的软件开发周期,较易的代码维护,同时还有众多的Active控制,提高了软件的使用效率。 连接采用SQL Server数据库,SQL Server是一种关系数据库工具,关系数据库已开发的最通用的数据库之一。该数据库能汇集各种信息以供查询、存储和检索。它是一种使用广泛的数据库管理系统,具有许多优点:易用性、适合分布组织科伸缩性、用于决策支持的数据库功能等。 2)经济可行性分析 从经济角度分析,学生成绩系统所耗费的资源非常的少。目前,计算机越来越普及,大部分学校都配有计算机,它使用的软件工具Visual Basic 和SQL Server,学校的机房几乎都有安装,而且由于这个系统较小,涉及人员较少,开发费用小,易于维护并具有可靠的安全性,该系统在投入使用后可以节省大量的人力、物力和财力。 3)社会可行性分析 现代科学信息技术的应用越来越普及,促进了社会的高速发展,也将社会带入了一个新的数字时代。学生成绩管理系统采用科学的,有效的手段,对信息加以分析,通过建立一个有效的学生成绩管理系统是学校的各项活动能够提高工作效率,最终提高经济效益和社会效益的目的。 该软件易于操作,实现的功能丰富,大大减少了工作量以及偶那个做人员的数量,便于对学生进行有效的管理,提高了部门信息化水平,同时能够与社会同类院校数据处理相融合,使此系统在时间上具备了可行性。 综上分析可知,学生管理信息系统在技术、经济、社会上具有可行性。 4.业务流程图 业务流程图如下: ①用户登录部分的业务流程

C语言学生成绩管理系统设计

航空航天大学 课程设计报告 大作业名称:C语言课程设计 大作业题目:学生成绩管理系统设计 院(系):计算机学院 专业:计算机科学与技术 班级: 学号: 姓名: 指导教师: 完成日期:2016年12月24日

目录 第1章概要设计 (1) 1.1题目的容与要求 (1) 1.2总体结构 (1) 第2章详细设计 (2) 2.1主模块 (2) 2.2输入模块 (3) 2.3显示模块 (3) 2.4修改模块 (4) 2.5删除模块 (4) 2.6查询模块 (5) 2.7统计模块 (6) 第3章调试分析 (7) 第4章使用说明 (8) 参考文献 (12) 附录(程序清单) (14)

第1章概要设计 1.1题目的容与要求 容: 学生成绩信息包括:姓名、学号、语文、数学、英语。 实现的主要功能有: 1)信息维护。包括学生成绩的输入、按学号删除、按学号修改等。 2) 信息查询。输入学号或姓名,显示出该生三个科目的成绩,计算出三科总分 并显示,按总分将所有学生成绩排序,显示出该生的名次。 3)成绩统计。先输入任意一个科目,接着选择a或b来分别显示平均分或统计分数段学生,若选择a,则直接显示出该科目的平均分;若选择b,则提示用户输入一个分数段,显示所有该科目属于该分数段的学生信息,并给出学生总数。 要求: 1)系统以菜单方式工作。在不同的界面为用户给出具体提示。 2)系统利用C语言实现,源程序要有适当的注释。 3)采用VC环境进行运行调试。 1.2总体结构 本程序主要分为七个模块(功能模块图见图1.1):结构体模块,输入模块,显示模块,修改模块,删除模块,查询模块,统计模块。 结构体模块:建立一个结构体模块,为链表存信息用。输入模块:键盘输入

学生成绩管理系统基本C语言编写

//代码版权所有,不要 #include "stdio.h" #include "stdlib.h" #include "string.h" #include "conio.h" copy,仅供参考学习。//标准输入输出函数库 //标准函数库 //字符串函数库 //屏幕操作函数库 #define p->data.num,p->https://www.wendangku.net/doc/ad9233264.html,,p->data.egrade,p->data.mgrade,p->data.cgrade,p->data.total,p->data.a ve,p->data.mingci int saveflag=0; //是否需要存盘的标志变量 //定义与学生有关的数据结构 typedef struct student { char num[12]; char name[15]; int cgrade; int mgrade; int egrade; int total; float ave; int mingci; }sqlist; //定义每条记录或结点的数据结构,标记为:node typedef struct node { struct student data;// 数据域 struct node *next; //指针域 }Node,*Link; //Node 为node 类型的结构变量,*Link 为node 类型的指针变量 void menu() //主菜单 { system("cls"); //调 用 DOS 命令,清屏.与clrscr() 功能相同 printf(" \n"); printf(" 学生成绩管理信息系统主菜单\n\n"); printf(" **************************************************\n"); printf(" $ 1 、添加记录6、统计记录$\n"); #define HEADER1 " ********************** ***** 学生成绩信息 ****************************** \n\n" #define HEADER2 " 学号姓名计算机数学英语总分平均分名次\n\n" #define FORMAT " %-10s %-10s %5d %5d %5d %5d %.3f %4d \n" DATA //标记为student //学号 //姓名//计 算机成绩// 数学成绩// 英语成绩 //总分 //平均分 //名次

学生成绩管理系统

程序设计课程设计报告 目录 一、课程设计题目及内容 二、程序中使用的数据及主要符号说明 三、带有详细注释的自己编写的源程序 四、程序运行时的效果图 五、实验结果分析,实验收获和体会。 1、实验结果分析: 2、实验收获和体会: 一、实验内容 实验1: (1)、设计一个学生类Student,包括数据成员:姓名、学号、二门课程(面向对象程序设计、高等数学)的成绩。 (2)、创建一个管理学生的类Management,包括实现学生的数据的增加、删除、修改、按课程成绩排序、保存学生数据到文件及加载文件中的数据等功能。 (3)、创建一个基于对话框的MFC应用程序,程序窗口的标题上有你姓名、学号和应用程序名称。使用(1)和(2)中的类,实现对学

生信息和成绩的输入和管理。 (4)、创建一个单文档的MFC应用程序,读取(3)中保存的文件中的学生成绩,分别用直方图和折线方式显示所有学生某课程的成绩分布图。 二、程序中使用的数据及主要符号说明 unsigned int mID;//学号 CString mName;//姓名 unsigned int mAge;//年龄 CString mAdd;//地址 float mCpp;//c++成绩 float mMath;//数学成绩

CListBox m_list;//列表名 afx_msg void OnClickedButtonAdd();//添加按钮afx_msg void OnClickedButtonDel();//删除按钮afx_msg void OnClickedButtonChange();//修改afx_msg void OnClickedButtonOk();//确定 afx_msg void OnClickedButtonCancle();//取消 afx_msg void OnSelchangeList1();//列表控件 virtual BOOL OnInitDialog();//初始化对话框 afx_msg void OnDestroy();//防止内存泄漏 afx_msg void OnClickedButton6(); int m_count;//记录人数 int mSex;//性别 三、带有详细注释的自己编写的源程序(1)、设计一个学生类Student //Student.h #pragma once #include //using namespace std; #include enum Sex { male, female }; class Student { public: Student();//构造函数 ~Student();//析构函数 unsigned int GetID()const { return m_num; } void SetID(unsigned int ID){ m_num = ID;}; std::string GetName()const { return m_name; }

用c语言编写一个成绩管理系统

程序说明:有N个学生,每个学生的数据包含学号(不重复)、姓名、三门课的成绩及平均成绩,试设计一学生成绩管理系统,使之能提供以下功能:(1)主菜单学生成绩管理系统 1、成绩录入 2、成绩查询 3、成绩统计 4、退出(2)各菜单项功能① 成绩录入:输入学生的学号、姓名及三门课的成绩;② 成绩查询:(至少一种查询方式)。 v 按学号查询学生记录。 v 查询不及格学生的记录。③成绩统计: v 计算学生的平均分; v 根据学生的平均分高低,对学生的数据进行排序后输出; v 对学生单科成绩排序,输出学生姓名与该科成绩;④退出系统:退出整个系统(即主菜单)。(3)结构体数组: #define N 30 struct student {int num; /* 定义学号*/ char name[20]; /* 定义姓名*/ float score[3]; /* 定义存贮三门课成绩的数组*/ float average; /* 定义平均成绩*/ };struct student stu[N]; /* 定义结构体数组,存贮多个学生的记录*/ . #include #include #include struct student { int num; char name[20]; float score[4]; float average; } stu[10000]; long t,max; bool unpass[1000]; FILE *fstu=fopen("stud.dat","at+"); int init() { int no,i; float s[4],ave; char nam[20]; while (!feof(fstu)) { fscanf(fstu,"%d",&no); fscanf(fstu,"%s",nam); fscanf(fstu,"%f%f%f%f",&s[1],&s[2],&s[3],&ave);

学生成绩管理系统代码 (1)

C程序学生管理系统 /* Note:Your choice is C IDE */ #include"" #include"" #include"" typedef struct student示所有\t2.按姓名查找\n\t\t\t3.按学号查找\t4.返回主菜单\n"); scanf("%d",&m); fflush(stdin); switch(m) { case 1:printf("\n=>该系统拥有%d名学生!\n\n",head->; p=head->next; printf("\t姓名\t学号\t性别\t数学\t英语\tc语言\t综合\n\n"); while(p) { printf("\t%s\t%d\t%s\t%d\t%d\t%d\t%d\n",p->,p->,p->,p->, p->,p->,p->; p=p->next; } break; case 2:printf("=>请输入查找姓名!\n"); gets(N); fflush(stdin); p=head->next; while(p) { if(strcmp(p->,N)==0) { printf("\t姓名\t学号\t性别\t数学\t英语\tc语言\t 综合\n"); printf("\t%s\t%d\t%s\t%d\t%d\t%d\t%d\n",p->,p->,p->,p->, p->,p->,p->; break; } else {

p=p->next; if(p==NULL) printf("=>你要查的学生不存在!"); } } break; case 3: printf("=>请输入查找学号!\n"); scanf("%d",&m); fflush(stdin); p=head->next; while(p) { if(p->==m) { printf("\t姓名\t学号\t性别\t数学\t英语\tc语言\t 综合\n"); printf("\t%s\t%d\t%s\t%d\t%d\t%d\t%d\n",p->,p->,p->,p->, p->,p->,p->; break; } else { p=p->next; if(p==NULL) printf("=>你要查的学生不存在!\n"); } } break; case 4:n=1;break; } } return 1; } int range(unit *head)学号\t2.按成绩\n\n"); printf("=>请选择操作!\n》"); scanf("%d",&n); fflush(stdin); if(q==NULL) { printf("=>无学生可排序!\n");

学生成绩管理系统详细设计

详细设计说明书1、引言 1.1编写目的 学生成绩管理系统的详细设计是设计的第二阶段,该阶段的根本目标是在概要设计的基础之上确定应该怎样具体地实现所要求的系统,也就是说,经过这个阶段的设计工作,应该得出对目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种设计语言书写的程序。本说明书提供出一个程序的“蓝图”,以便更好的完成编码任务。学校的现代化管理中,学生的成绩管理是必不可少的一部分。成绩管理的内容对于学校的管理是关重要的,所以,成绩管理系统必须要为用户提供必要的信息和快捷的查询功能。 1.2项目背景 该项目充分利用现代化技术来提高学生成绩查询的效率,使得原始的办公系统更加方便,工作效率也得到提高。 1.3使用工具 1)eclipse:开发工具 2)Mysql:数据库管理软件 3)Navicat Premium:第三方软件显示mysql数据库

4)Tomcat: 使用服务器 5)window7:硬件环境 6)JSP:软件开发语言 2、总体设计 2.1需求概述 学生成绩管理系统是对学校教务和教学活动进行综合管理的平台系统,是一个学校和地区教育信息化的基础信息平台。满足学校管理层、学生、教师的日常工作、学习、查询、管理等工作。目的是共享学校各种信息。提高学校的工作效率、规范学校的工作流程、便利学校与学生及教师的交流。 2.2项目任务范围 学生成绩管理系统共分为三个大的模块:学生成绩查询模块、教师成绩录入模块及管理员对各项信息管理模块。 学生:查询学生个人信息,包括个人成绩查询和修改密码。 教师:查询教师个人信息,包括学生成绩录入和修改密码。 管理员:学生管理(对学生进行增删改查);教师管理(对教师进行增删改查);班级管理(对班级进行增删改查);成绩管理(对学生成绩 的增删改查)所有人的密码管理;个人密码修改。

C学生成绩管理系统

C#课程设计 姓名: 班级: 学号: 指导老师: 简介 该系统是用VisuaStudio2010和Access2007,通过C#语言进行相关代码的编写,生成相关程序。学生成绩管理系统是构建于VisualC#.NET平台上的Windows应用程序。本文描述的是基于Windows环境的学生成绩管理系统,主要工具MicrosoftVisualStudio2010设计窗体,Access2007建立数据库,学生成绩管理管理系统为用户提供充足的信息和快捷的查询手段,实现学生基本信息、成绩的录入,删除,查询,维护以及成绩的统计分析等几方面的功能,是现实问题的迫切要求。 本篇报告介绍一个学生信息管理系统的从分析到设计最后到开发的全过程为,给出了学生信息管理系统的设计和技术实现的过程,特别在细节上分析功能和函数的实现思想。涉及到学生信息管理的基本功能在本报告中都有相应的描述。管理信息系统正在向着网络化、智能化和集成化等趋势发展。学生成绩管理系统是为了更好的管理学生考试成绩而开发的数据管理软件。它对于一个学校是不可缺少的重要部分,它的内容对于学校的决策者和管理者来说都至关重要。 在这次的课程设计中,让我了解到Microsoft Visual Studio 2010,同时学

习了Access数据库的建立和连接与导入。能在Visual C#.NET平台上进行Access数据库的修改与控制,将C#语句与SQL语句混合使用,成功的完成了学生成绩管理系统的整体设计,加深巩固了选择的条件语句,还有曾经学习过的基本运算语句,同时也为以后的进一步学习垫下了了良好的基础。 目录 第一章绪论 (4) 设计目的 (4) 开发工具选择 (4) 开发环境 (4) 第二章需求分析 (5) 系统目标 (5) 功能需求分析 (6) 性能需求分析 (6) 第三章总体设计 (7) 设计概述 (7) 功能模块设计 (7) 第四章数据库设计 (8) 数据库需求分析 (8) 数据库表设计 (9) 第五章详细设计 (10) 系统程序流程图 (11) 系统主要功能模块 (13)

学生成绩管理系统分析报告

学生成绩管理系统分析报告 ■建立新系统的必要性 随着学校规模的不断扩大,专业、班级、学生的数量急剧增加,有关学生各门课程的成绩的各种信息量也成倍增长,学生成绩管理操作重复工作较多,工作量大,因此,建立学生成绩管理系统来提高工作的效率。基于互联网的学生成绩管理系统,在学生成绩的规范管理、科学统计和快速查询方面具有较大的实用意义,提高了信息的开放性和快速性。使学生信息更加系统化,信息更加精确化。使管理人员管理更加方便,能够改动部分信息,最大化的满足工作的需求。 学生成绩管理系统的建立,在学生查询成绩的规范管理、科学统计和快速查询方面具有较大的实用意义,它提高了信息的开放性,大大改善了学生对其最新信息查询的准确性。成绩管理系统有查找方便、可靠性高、存储量大、易操作、保密性好、信息保存时间长等优点,它能极大的提高老师和学生成绩信息管理的效率。 ■业务流程分析 通过对学生成绩管理业务的调查分析,弄清了学生成绩管理系统的业务流程和管理功能,系统的业务流程如下图所示: 业务流程图部分:

管理功能部分: 从业务流程图可以看出,学生成绩管理系统中分为大的三个方面:系统管理员模块、教师模块、学生模块,其主要管理功能有: 1、系统管理员功能 系统管理员进入学生成绩管理系统的主要功能是:实现管理员用户的添加、修改和删除,以及对教师添加、教师修该、教师删除、教师查询、学生的添加、学生的修改、学生的查询等基本功能,并且参与开设课程、选择课程的管理,安排教师的任课和学生的选课工作,管理元为每门课程设置一个学分,没门课程可以是必修或选修,如果学生及格,学生将获得该课程学分。 2 、教师功能 教师进入学生成绩管理系统的主要功能是:各科教师登录系统后查询和修改个人信息、修改自己的账号密码,查询自己的授课课程,实现对选秀了自己课程的学生的成绩进行查询、录入和修改,各科老师可以对自己学生选修课程结束后给与分数,同时可以对自己所带课程的成绩优秀人数、及格人数和不及格人数的分布信息进行查询。 3 、学生功能 学生进入学生成绩管理系统的主要功能是:每个学生登录系统后可以查询和修改个人信息、修改自己的账号密码,以及自己所选课程任课老师的个人信息,同时在课程结束后可以查询在校期间各个时间段选修课程的成绩与学分,以及对单科成绩和总分的排名查询。

C简单学生成绩管理系统

C++学生成绩管理系统 要求用C++语言编写学生成绩管理系统,要求能进行添加删除修改输入输出等的操作,并能使用面相对像原理对此系统进行实现。 学生成绩管理系统分析: 学生成绩管理系统分为8个模块,分别是:添加学生信息,输出学生成绩,查找学生成绩,修改学生成绩,删除学生成绩,学生成绩排序,保存数据到文件和读取文件中学生成绩的模块。 学生成绩管理系统结构:

各个子函数功能及其流程: 1.首先定义一个学生类Class Student;并定义其各个私有变量和公有函数 2.Student();构造函数,用于初始化学生类中的各个变量并记录 3.Add();函数:用于添加学生信息的函数包括学号姓名成绩等的内容 4.Output();函数:用于输出学生信息,包括学号姓名各科及总分平均成绩

5.Find();函数:用于查找学生各项信息。 6.modify();函数:用于修改学生各项信息。 7.delete();函数:用于删除学生信息。

8.sort();函数:对学生各项信息进行排序操作。 8.save()和load();函数:将学生信息保存到文件中,并在需要的时候调用该文件将其中 的学生信息显示出来

9.“=”“<<”“>>”符号的重载:在各个函数处理数据过程中对这些的调用处理函数源代码: 此函数源代码在VisualC++6.0环境下编译通过。具体如下: #include"iostream.h" #include"conio.h" #include"iomanip.h" #include"stdio.h" #include"string.h" #include"stdlib.h" #include"fstream.h" class student //定义学生类 { private://定义学生类的私有成员 char name[20]; //名字 char sex[5]; //性别 int number; //学号 int score[3]; //分数 int total; //总分 int average; //平均分 public: //公有成员 student(); //学生构造函数,用于学生数据的初始化及保存学生数据 void add(); //添加学生信息函数 void output(); //输出学生信息函数 void find(); //查找学生数据函数 void modify(); //修改学生信息函数 void deleted(); //删除学生信息函数 void sort(); //排序函数 void save(); //保存学生信息并写入文件函数 void load (); //打开写有学生信息的文件的函数

学生成绩管理系统1.0

本程序初始化学生人数为3人,请在header文件中将#define STU_NUM 3改为#define STU_NUM 你将输入的学生数目Function.c /* 学生成绩管理系统V1.0(使用数组) 功能要求: 1、输入学号和成绩(格式化输入) 2、计算平均成绩(求和统计) 3、按成绩从高到低排序(冒泡法、选择法) 4、按成绩从低到高排序(冒泡法、选择法) 5、按学号从小到大排序(冒泡法、选择法) 6、按学号查询成绩名次(顺序查找) 7、统计成绩分布(统计计数) 8、输出学号和成绩(格式化输出) 0、退出系统 */ #include #include #include"header.h" int menu() { int result;

while(1) { system("cls"); printf("学生成绩管理系统V1.0\n"); printf("1 输入学号和成绩\n"); printf("2 计算平均成绩\n"); printf("3 按成绩从高到低排序\n"); printf("4 按成绩从低到高排序\n"); printf("5 按学号从小到大排序\n"); printf("6 按学号查询成绩名次\n"); printf("7 统计成绩分布\n"); printf("8 输出学号和成绩\n"); printf("0 退出系统\n"); if(scanf("%d",&result)!=1) { fflush(stdin); continue; } if(result>=0&&result<=8) break; }

学生成绩管理系统

《数据库原理》课程设计报告 设计题目成绩管理系统 学生姓名马伟光 所在学院计算机与通信学院 专业及班级软件1202 指导教师龙巧云老师 完成日期2014年6月20日

目录 1.概述 (1) 1.1简介设计步骤 (1) 1.2开发环境简介 (1) 2.需求分析 (2) 2.1开发背景 (2) 2.2开发目的 (2) 2.3功能需求 (2) 2.4相关数据 (3) 数据流图 (4) 数据字典 (5) 3.系统设计 (7) 4.数据库设计 (8) 4.1概念设计(E-R) (8) 4.2逻辑设计 (8) 设计成员及分工情况 (9) 5.详细设计 (9) 6.系统总结 (13) 7.结束语 (16) 8.参考文献 (16)

1.概述 1.1 简介设计步骤 该学生成绩管理系统,实现简单的密码修改、成绩查询、课程查询、学生查询等操作,并能实现简单的数据统计。 此系统主要完成用户密码登录、用户密码的修改、成绩查询、课程查询、学生查询、具体成绩查询等基本功能。 (一)用户密码登录: 在登录程序之前会先弹出一个登录对话框,在正确的输入了数据库中存储的用户和密码后才能登录程序。 (二)用户密码的修改 在成功登录了程序之后用户可以根据自己的需要修改当前密码。 (三)成绩查询 1.成绩修改 前选中要修改的成绩信息,然后进行修改。 2.成绩添加 直接弹出添加对话框,然后进行添加。 3.成绩删除 前选中要删除的成绩信息,然后直接删除。 (四) 课程查询 1.课程修改 实现对课程名、学时、学分的修改。 2.课程添加 对一门新开设的课程进行录入,并存入数据库。 3.课程删除 对一门不再开设的课程进行删除,并从数据库中删除。 (五)学生查询 1.学生信息修改 修改选中当前学生的信息。 2.学生信息添加 增加新学生的信息。 3.学生信息删除 删除选中当前学生信息。 1.2 开发环境简介 1)Microsoft visual c++ 6.0 Visual C++是一个功能强大的可视化软件开发工具。自1993年Microsoft公司推出Visual C++1.0后,随着其新版本的不断问世,Visual C++已成为专业程序员进行软件开发的首选工具。 Visual C++6.0不仅是一个C++编译器,而且是一个基于Windows操作系统的可视化集成开发环境(integrated development environment,IDE)。Visual C++6.0由许多组件组成,包括编辑器、调试器以及程序向导AppWizard、类向导Class Wizard等开发工具。这些组件通过一个名为Developer Studio的组件集成为和谐的开发环境。

C程序设计学生成绩管理系统

· 课程设计题目:学生成绩管理

第1章系统概要 系统介绍 设计一个学生管理系统,能够实现学生信息输入,并对这些信息进行处理并输出。基本功能要求 从键盘输入某班级若干个学生的学号、姓名、三门课(语文、数学、英语)的成绩,分别实现如下功能; (1)统计每个学生的总分和平均分。 (2)按总分由大到小排出名次。 (3)打印出成绩在全班平均分以上的学生名单和数据信息。 (4)任意输入一个学号或姓名,能够查找出该学生在班级中的排名及其考试成绩。 本系统是根据学生成绩管理的需要,而建立一个“学生成绩管理系统”,以及方便对成绩的各项管理操作。本系统能对成绩进行输入和输出;能按成绩对学生进行排序,并显示学生资料、成绩等,不过得以系统输入学生资料、成绩为前提。能根据学生的姓名或学号来查询该学生的资料。

第2章设计思路与算法程序功能结构图 图2-1 学生成绩管理系统功能图 各模块介绍

学生成绩管理系统包括七个模块:输入学生资料,输出学生资料,统计总分和平均分,按学生总成绩或平均成绩排序,打印平均分高于班级平均分的学生信息,按姓名或学号查找,菜单选择这七个模块既相互联系又相互独立。 各模块功能介绍 1)输入模块(void setdata(student stu[])): 主要功能是用来对学生的成绩进行输入。使用该功能可以输入所有学生的信息、资料等。具体包括学生的班级,学号,姓名,各科成绩。 2)输出模块(void print(student stu[],int i)): 主要功能是用来对学生的成绩进行输出。在系统已经录入了学生资料成绩的前提下,使用该功能可以显示所有学生的信息、资料等。具体包括学生的班级,学号,姓名,各科成绩,总成绩和平均成绩。 3)统计模块(void count(student stu[])): 主要功能是用来对学生的成绩进行计算。在系统已经录入了学生资料成绩的前提下,使用该功能可以计算出每个学生的总成绩和平均成绩。 4)排序模块(void sort(student stu[])): 按学生平均成绩进行排列模块块,此模块的主要功能是用来对学生的平均成绩进行排序,这样在统计名次是就比较方便。在系统保存学生资料的前提下,使用此功能能快速统计出学生的名次情况。 5)打印平均分高于班级平均分的学生信息模块(void getaverage(student stu[])):主要功能是输出学生平均分高于等于班级平均分的学生信息。 6)查找模块(void search1(student stu[],char*a) 按学号查找void search2(student stu[],char*b) 按姓名查找): 主要功能是用来查找学生资料,在系统输入学生资料的前提下,想查找某个学生的资料,我们只要知道他的学号或姓名,输入学号或姓名后,系统可以帮我们把他的信息输出。7)菜单模块(int select1()): 主要功能是用来选择哪种操作。根据提示可对学生信息进行处理。 第3章源程序代码 #include<> umber<<"\t"<

相关文档
相关文档 最新文档