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

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

项目设计题目(学生成绩管理系统)

学号:姓名:自评成绩:成绩:

1.选题意义、依据

学生成绩系统的设计从学生的应用中而来,学生了解该系统的组成和运行过程,它贴近学生的生活能使学生更加方便的使用各个语句、函数、结构体等。

依据学生期末成绩表的格式。

2.系统功能设计与分析(功能模块说明)

系统主要用于从一个文件夹读入学生信息

(101 张三85 78 87

102 李斯57 59 60

103 王红84 79 87

104 赵子龙72 75 76

105 李洪磊88 98 89),包括学生学号、姓名、成绩(数学、英语、数据库),程序中引用了八个函数void Cscore(int); void Rank(int ave); void Listnumber(int i); void Listscore(int i); void Lookup(int); void Alter(int); void Dele(int &i); void Insert(int &i); 系统主要实现的功能有:查询、修改、删除、插入、成绩单(以学号排名)和成绩单(以名次排名)。

Cscore 函数主要是对学生进行排名。具有相同总分的学生具有相同的名次,例如:第三名和第四名具有相同的总分则在表中不会出现第四名,将出现两个第三名紧接着出现第五名学生的情况。

Rank 函数主要用于按平均分对学生进行备注。把学生分为四个等级:>90分为excellent,80—90分为medium,60—80分为qualified,<60分为disqualified。

Listnumber 函数主要用于把学生的信息(学号姓名数学英语数据库总分平均分名次备注)以学号排名的顺序用表的形式输出,方便学生查看。Listnumber 函数中还调用了Cscore 和Rank 函数。

Listscore 函数是把学生的信息以总成绩排名的形式输出。

Lookup 函数主要运用学号或姓名形式查询单个学生信息,如果存在则输出该学生信息(学号姓名数学英语数据库总分平均分名次备注),否则输出“Input message is error.”。

Alter 函数是修改指定学号的学生信息。主要用于修改指定学号学生的各科成绩并输出修改后的学生信息(学号姓名数学英语数据库总分平均分名次备注)。

Delete 函数用于删除指定学生的信息。可用两种方式删除:以学号形式删除学生信息,以姓名形式删除学生信息。若要删除了学生不存在则输出“message

error.”。

Insert 函数用来插入学生的信息,一次调用Insert 函数可以添加多个学生的信息。Insert 函数中还调用了Cscore 和Rank 函数。

3.涉及的主要知识点说明

(1)系统主要运用了函数的声明、定义、调用(值调用和地址调用)。

(2)对文件的读入操作。

(3)在平均分的求取上采用四舍五入的方式,运用了类型转换。

(4)多次运用if和for嵌套,在for嵌套中又运用了break语句。

(5)运用了switch。

(6)对字符数组的比较中运用了strcmp,还运用toupper把小写字母转换成大写。

(7)对学生信息进行的插入和有序删除操作。

(8)运用iomanip对输出进行美观。

4.创新性说明(怎么解决)

创新性:系统可以对具有相同总分学生的学生输出相同的名次。若存在三个相同的分数都为第二名,则在输出时出现三个第二名不会出现第三、四名,紧接着出现第五名。

解决方法:(1)用一个数组记录具有相同分数的人数,数组下标和学生信息所具有的下标相同;(2)删除相同的总分只保留其中一个分数;(3)对删除相同总分的分数按从高到底进行排序;(4)对各个学生的总分进行排名。

5.源代码

<

return 1;

}

for (i=0; i

{

infile>>stu[i].num>>stu[i].name>>stu[i].math>>stu[i].english>>stu[i].database;

stu[i].sum=stu[i].math+stu[i].english+stu[i].database;

stu[i].average=int(float(stu[i].sum)/3+;

}

i=i-1;

cout<

cout<<"Y or N 进入菜单栏"<

cin>>ch;

ch=toupper(ch);

while (ch=='Y')

{

cout<

<<" 菜单:"<

<<" 1)查询"<

<<" 2)修改"<

<<" 3)删除"<

<<" 4)插入"<

<<" 5)成绩单(以学号排名)"<

<<" 6)成绩单(以名次排名)"<

cout<<"***请选择1--4 中任何一个:"<

cin>>k;

cout<

switch (k)

{

case 1:Lookup(i);break;

case 2:Alter(i);break;

case 3:Dele(i);break;

case 4:Insert(i);break;

case 5:Listnumber(i);break;

case 6:Listscore(i);break;

default :cout<<"error input!"<

}

cout<

cin>>ch;

ch=toupper(ch);

}

cout<<"Thank you for using!"<

<<"Bye bye !"<

();

return 0;

} um;

}

for (j=0; j

{

h[j]=0;

for (k=0; k

{

if (sum0[j]==sum0[k])

{

h[j]++; um)

{

score[j+1]=score[j]+b[j];

stu[k].score=score[j+1];

b[j+1]=h[k];

} um<

<

cout<

cout<

cout<

Rank(stu[j].average);

}

}

void Listscore(int i)

{

int j,k;

Cscore(i);

cout<<"学号姓名数学英语数据库总分平均分名次备注"<

for (j=1; j

{

for (k=0; k

{

if(stu[k].score==j)

{

cout<

<

cout<

cout<

cout<

Rank(stu[k].average);

}

}

}

}

void Lookup(int i) <

cout<<"1 is use number,0 is use name."<

cin>>n;

if (n) um)

{

k=j;

break;

}

}

}

else ame,name1)==0)

{

k=j;

break;

}

}

if (k==MAX)

{

cout<<"Input message is error."<

}

else um<

cout<

cout<

cout<

Rank(stu[j].average);

}

}

void Alter(int i) ."<

cout<<"Please input number:";

cin>>numb;

for (j=0;j

{

if (numb==stu[j].num)

{

cout<<"find out:"<

cout<<"学号:"<

cout<<"Please input new result: 数学英语数据库"<

cin>>stu[j].math>>stu[j].english>>stu[j].database;

stu[j].sum=stu[j].math+stu[j].english+stu[j].database;

stu[j].average=int(float(stu[j].sum)/+;

Cscore(i);

um<

<

cout<

cout<

cout<

Rank(stu[j].average);

break;

}

}

}

void Dele(int &i) ."<

cout<<"Please select:"<

cout<<" [1]以学号形式删除学生信息"<

cout<<" [0]以姓名形式删除学生信息"<

cin>>k;

if (k) um)

break;

}

}

else ame)==0)

break;

}

}

if (j

{

for(; j

{

stu[j].num=stu[j+1].num;

strcpy(stu[j].name,stu[j+1].name);

stu[j].math=stu[j+1].math;

stu[j].english=stu[j+1].english;

stu[j].database=stu[j+1].database;

stu[j].sum=stu[j+1].sum;

stu[j].average=stu[j+1].average;

}

i=i-1;

C score(i);

}

else

cout<<"message error."<

}

void Insert(int &i) ."<

cout<<"Please input insert number of people:";

cin>>n;

i=i+n;

cout<<"Please input insert :"<

cout<<"学号姓名数学英语数据库"<

for (j=i-n; j

{

cin>>stu[j].num>>stu[j].name>>stu[j].math>>stu[j].english>>stu[j].database;

stu[j].sum=stu[j].math+stu[j].english+stu[j].d atabase;

s tu[j].average=int(float(stu[j].sum)/+;

}

Cscore(i);

cout<<"学号姓名数学英语数据库总分平均分名次备注"<

for (j=i-n; j

{

cout<

cout<

cout<

cout<

Rank(stu[j].average);

}

}

6.运行结果与分析

运行结果:

分析:

系统基本上能实现对成绩的查询、、修改、删除、插入、成绩单(以学号排名)和成绩单(以名次排名)等功能,并且可以插入多个学生的信息。但在插入学生后未不能成绩单以学号排名的形式输出。为了改进程序对Insert 函数进行了一下修改。

Insert 函数代码如下:

void Insert(int &i) ."<

cout<<"Please input insert number of people:";

cin>>n;

m=i+n;

first=0;

last=i-1;

mid=(first+last)/2;

cout<<"Please input insert :"<

cout<<"学号姓名数学英语数据库"<

for (j=i; j

{

i=i+1;

cin>>stu[j].num>>stu[j].name>>stu[j].math>>stu[j].english>>stu[j].database;

while (first<=last)

{

if(stu[j].num

{

last=mid-1;

}

else if(stu[j].num>stu[mid].num)

{

first=mid+1;

}

else

{

break;

}

mid=(first+last)/2;

}

if(first>last)

{

num0=stu[j].num;

strcpy(name0,stu[j].name);

math0=stu[j].math;

english0=stu[j].english;

database0=stu[j].database;

for (k=i-1; k>first; k--) um=stu[k-1].num;

strcpy(stu[k].name,stu[k-1].name);

stu[k].math=stu[k-1].math;

stu[k].english=stu[k-1].english;

stu[k].database=stu[k-1].database;

stu[k].sum=stu[k-1].sum;

stu[k].average=stu[k-1].average;

}

stu[first].num=num0;

strcpy(stu[first].name,name0);

stu[first].math=math0;

stu[first].english=english0;

stu[first].database=database0;

stu[first].sum=stu[first].math+stu[first].english+stu[first].database;

stu[first].average=int(float(stu[first].sum)/+;

}

else

{

cout<<"message error."<

}

first=0;

last=i-1;

mid=(first+last)/2;

}

Cscore(i);

}

修改后程序经运行后结果如下:

结果发现修改后的程序运用了二分查找法、多重嵌套等,能较好的实现对学生的信息以学号为序进行了多个数据的有序插入。

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;

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<<"对不起,没有你要查找的学生成绩"<

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

辽宁工业大学 数据库原理与应用课程设计(论文)题目:东北大学学生成绩管理系统 院(系):软件学院 专业班级:软件技术083班 学号:081404090 学生姓名:王晓君 指导教师:张莉莉 教师职称:助教 起止时间:2009.11.23至2009.12.4

课程设计(论文)任务及评语院(系):软件学院教研室:软件教研窒

目录 第1章课程设计目的与要求 (1) 1.1 课程设计目的 (1) 1.2 课程设计的实验环境 (1) 1.3 课程设计的预备知识 (1) 1.4 课程设计要求 (1) 第2章课程设计内容 (2) 2.1 系统设计 (2) 2.2 数据库模型 (3) 2.3 设计窗体和报表 (7) 2.4 窗体和报表模块主要代码 (1) 第3章课程设计总结 (1) 3 参考文献 (1) 4

第1章课程设计目的与要求 本课程的课程设计实际是电子商务和计算机信息管理专业学生学习完《数据库原理及应用(ACCESS 2002)》课程后,进行的一次全面的综合训练,其目的在于加深对数据库基础理论和基本知识的理解,掌握运用数据库应用系统开发软件的基本方法。1.1课程设计的实验环境 硬件要求能运行Windows 9.X操作系统的微机系统。数据库应用系统开发软件可以选用Microsoft Access,或其他数据库管理系统。 1.2 课程设计的预备知识 熟悉数据库的基本知识及一种以上数据库系统开发软件。 1.3 课程设计要求 按课程设计指导书提供的课题,应根据下一节给出的基本需求独立完成八个方面的

设计,标有“可选”的部分可根据设计时间的安排及工作量的大小适当选择。选用其他课题或不同的数据库管理系统,可以组成设计小组,分模块进行,共同协作完成一个应用系统的开发任务。要求书写详细的设计说明书,对复杂的代码段和程序段,应画出程序流程图。在界面设计中,画出每个窗口的布局,有多个窗口时,按模块调用的方式画出窗口调用图,用手工画好报表和标签样式,严禁相互抄袭。

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

*题目七:学生成绩管理系统设计 学生成绩信息包括:学期,学号,班别,姓名,四门课程成绩(语文、数学、英语和计算机)等。 主要功能: (1)能按学期、按班级完成对学生成绩的录入、修改 (2)能按班级统计学生的成绩,求学生的总分及平均分 (3)能查询学生成绩,不及格科目及学生名单 (4)能按班级输出学生的成绩单 要求:使用二进制文件方式存储数据,系统以菜单方式工作 源代码: #include #include #include #include struct Student { int cls; char nam[10]; char num[10]; int chinese; int english; int computer; int math; }stud1[100],stud2[100];

{ char a; while(a>'7'||a<'0') { system("cls"); printf(" 欢迎使用学生成绩管理系统\n"); printf(" 制作人:章建\n"); printf("********************** 学生成绩管理系统************************\n"); printf(" 1.输入学生成绩\n"); printf(" 2.输出学生成绩\n"); printf(" 3.查找并显示学生成绩\n"); printf(" 4.按姓名查找,修改学生资料\n"); printf(" 5.显示所有学生名单\n"); printf(" 6.查找并删除学生信息\n"); printf(" 7.从文件读取数据\n"); printf(" 0.储存学生资料并退出系统\n"); printf("********************************************************************* *\n"); printf("请选择(0-7)\n"); a=getchar(); } return(a-'0'); } /******************************************************************************

C语言程序设计学生成绩管理系统实验报告

计算机学院 C语言程序设计报告书设计名称:学生成绩管理系统 专业:软件工程 指导老师: 班级: 姓名: 学号: 座号: 2011-6-15

一、实验目的 1.在编辑应用程序过程中,逐步加深对C语言编程的理解; 2.加强实践的能力,动手能力,同时进一步对所学的知识 进行巩固; 3.培养初步编程的能力,为以后的学习奠定基础。 二、实验内容 运用所学的C语言知识编辑一个应用程序:学习成绩管理系统 三.系统软件环境: 本程序主要运行在:Visual C++ 6.0 Turbo C/C++ 3.0 四.课程设计题目: 学生成绩管理系统 程序说明:有N个学生,每个学生的数据包含学号(不重复)、姓名、三门课的成绩及平均成绩,试设计一学生成绩管理系统,使之能提供以下功能: (1)主菜单

(2)各菜单项功能 ①成绩录入:输入学生的学号、姓名及三门课的成绩; ②成绩查询: *按学号查询学生记录。 ③成绩统计: *计算学生的平均分; *根据学生的平均分高低,对学生的数据进行排序后输出; ④退出系统:退出整个系统(即主菜单) 。 五.数据结构设计描述: ↓ ↓

六.各变量的定义和作用 int num; /*定义学号,变量为整型*/ char name; /*定义姓名,变量为字符型*/ int score; /*定义课程的成绩,变量为整型*/ float average; /*定义平均分,变量为浮点型*/ 七.系统各函数的功能,、相互调用关系 1.函数实现功能说明: (1)menu函数 是定义一个菜单函数,其功能在于输出菜单界面供使用者选择。 (2)input函数 是定义用于输入学生信息。 (3)select 函数 是定义用于查询学生信息。包括学号、姓名及各科成绩。(4)statistics 函数 计算学生的平均分。 根据学生的平均分高低,对学生的数据进行排序输出。2.相互调用关系: Main函数调用menu函数。 Menu 函数可以调用input 函数、select函数和statistics函数八.心得体会

C+课程设计报告学生成绩管理系统

学生成绩管理系统 说明:该课程设计包含两个部分,一个为纯dos系统下的控制台程序,用C++编写;另一个为有界面的MFC项目。 目录 纯dos系统下的控制台程序 1、设计要求 (3) 2、设计分析 (3) 3、调试说明 (4) 4、源代码 (8) 5、实验总结 (21) 有界面的MFC项目 1、设计内容 (22) 2、设计说明 (22) 3、设计步骤 (22) 4、运行演示 (27) 5、实验总结 (29)

纯dos系统下的控制台程序 1、设计要求 现有学生成绩信息,内容如下: 姓名学号语文数学英语 张明明01 67 78 82 李成友02 78 91 88 张辉灿03 68 82 56 王露04 56 45 77 陈东明05 67 38 47 请用C/C++编写一系统,实现学生信息管理,软件的入口界面应包括如下几个方面: 功能要求: (1)信息维护: 要求:学生信息数据要以文件的形式保存,能实现学生信息数据的维护。此模块包括子模块有:增加学生信息、删除学生信息、修改学生信息(2)信息查询: 要求:查询时可实现按姓名查询、按学号查询 (3)成绩统计: 要求:A输入任意的一个课程名(如数学)和一个分数段(如60--70),统计出在此分数段的学生情况。 (4)排序:能对用户指定的任意课程名,按成绩升序或降序排列学生数据并显示排序结果(使用表格的形式显示排序后的输出结果) 其它要求: (1)只能使用C/C++语言,源程序要有适当的注释,使程序容易阅读 (2)至少采用文本菜单界面(如果能采用图形菜单界面更好) (3)学生可自动增加新功能模块(视情况可另外加分) (4)写出课程设计报告,具体要求见相关说明文档 2、设计分析 (1)需求分析: 该程序要能实现对学生成绩信息的增加、删除、修改,实现对学生按姓名查询,按学号查询显示,对任意一个课程名和分数段的学生人数进行输出并统计人数,最好还要根据用户的需求对学生成绩排序。 (2)系统性能要求: a.系统安全、可靠; b.功能齐全; c.操作方便、界面友好; d.易于维护和扩充。 (3)系统功能模块: 学生成绩管理系统包括:增加、删除、修改、显示、信息查询、成绩统计、排序几个部分构成。

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

//代码版权所有,不要 #include "stdio.h" #include "stdlib.h" #include "string.h" #include "conio.h" copy,仅供参考学习。//标准输入输出函数库 //标准函数库 //字符串函数库 //屏幕操作函数库 #define p->data.num,p->https://www.360docs.net/doc/1912498641.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 //学号 //姓名//计 算机成绩// 数学成绩// 英语成绩 //总分 //平均分 //名次

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

信息技术工程学院 C语言课程设计报告 题目:学生成绩管理系统(student achievement management system)

目录 一设计目的 (3) 二课程设计的内容 (3) 三课程设计的要求与数据 (4) 四课程设计应完成的工作 (4) 五总体设计(包含几大功能模块) (5) 六详细设计 (6) 6.1各个模块的功能和实现 (6) 6.2 流程图 (7) (管理员模式流程图) (7) (来宾模式流程图) (8) (8) 七调试分析(各模块测试结果) (9)

7.1源代码 (9) 7.2 各模块测试结果 (23) 八总结 (26) 九参考资料 (27) 一设计目的 通过本课程设计巩固《C语言程序设计》课程的教学成果,深入理解结构体、指针、链表、动态分配内存和文件操作的等C程序设计中的中高级技术,通过课程设计的综合训练,培养学生实际分析问题、编程和动手能力、提高学生利用C 语言进行程序设计的能力,初步培养良好的编程习惯和编程风格,初步学习程序的文档的撰写方法。 二课程设计的内容 通过C语言程序系统,设计一个可以对学生的成绩信息进行管理的程序,其中学生的信息可以包括:学号、各科目的成绩的平均分排序等,其功能可以包括学生成绩的输入、输出、查询、排序、删除、统计、退出等。

三课程设计的要求与数据 1、用C语言实现系统; 2、对学生信息(包括学号、姓名、语文、数学、英语、平均分)进行管理,包括学生成绩的信息输入、输出、查询、删除、排序、统计、退出、显示,以及整个程序的切换登录模式和修改管理员的信息. 3、学生信息包括: (1)、每一条记录包括一个学生的学号、姓名、3门课成绩 (2)、成绩信息录入功能:(成绩信息用文件保存,可以一次完成若干条记录的输入。) (3)、成绩信息显示浏览功能:完成全部学生记录的显示。 (4)、查询功能:完成按姓名查找学生记录,并显示。 (5)、成绩信息的删除:按学号进行删除某学生的成绩. (6)、排序功能:按学生平均成绩进行排序。 (7)、应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观! 四课程设计应完成的工作 (1)编写算法; (2)算法测试,并有具体的测试结果和结果分析; (3)撰写课程设计报告。内容包括:

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,退出成绩管理系统。

数据结构课程设计学生成绩管理系统

辽宁科技大学 课程设计报告设计题目:学生成绩管理 学院、系:电子与信息工程学院 专业班级:计算机11-2 班 学生姓名:赵月 指导教师:龙艳彬 成绩: 2013年1 月8 日 目录

一、需求分析------------------------------------------------3 二、概要设计------------------------------------------------3 三、详细设计------------------------------------------------5 3.1系统流程图-----------------------------------------------------5 3.2界面设计-------------------------------------------------------6 3.3各功能模块的设计----------------------------------------------7 四、测试与分析---------------------------------------------9 五、总结-----------------------------------------------------15 六、附录(源代码)--------------------------------------16 1.需求分析 1.1问题描述 本系统实现了学生成绩管理的功能,具有学生成绩的输入、读取、查询、修改、插入、删除、排序,统计等功能。

1.2基本要求 (1) 输入的形式和输入值的范围; 首先输入学生个数,按回车键。按照提示选择,将学生信息保存在文本文档中,具体对学生信息进行插入删除查询操作时,将保存在文本文档中的学生信息提取出来,保存在自己定义的数据结构中,然后再对该数据结构进行操作,所有操作完成,或者在相应的命令后,再将学生信息保存到文本文档中。输入数据类型主要是char、int、float等数据类型,输入内容包括:学期、学号、姓名、高等数学成绩,数据机构成绩,大学英语成绩总分,平均分等数据。 (2) 输出的形式; 学期、学号、姓名、高等数学成绩,数据结构成绩,大学英语成绩,总分,平均分等数据。 (3) 程序所能达到的功能; 1. 数据输入功能,输入的数据能最终保存在文件中; 2.数据删除功能,能最终从文件中删除; 3. 排序功能,根据自己设计的数据结构,设计排序算法 4.多种查询(如按学号查询、按姓名查询、按成绩查询等)及输出功能; 6. 学生信息的修改(比如修改学生姓名,修改学生某门课程的成绩) 7. 其它功能(如各种统计,统计每个学生所有课程的平均分,统计某门课程所有学生的平均分等等) 2、概要设计 1. 数据结构:数组(顺序存储结构) 2. 程序模块: (1)先编入系统所需的库函数,使程序可运行 #include #include #include //主要是对cin,cout之类的一些操纵运算,是I/O流控制头文件。 #include //文件和标准控制台的输入输出 #include (2)主界面的设计 在主界面中包括“①输入学生信息并保存到文件②读取文件并输出学生信息③按学号及学期查询④按姓名及学期查询⑤按学号及学期修改信息⑥插入信息⑦按学号及学期

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语言课程设计报告学生成绩管理系统

机电工程学院 中南大学 本科生C语言课程设计题目学生成绩管理系统

一、课程设计 题目:学生成绩管理系统 给出n个学生的4门考试的成绩表,每个学生的信息由学号、姓名以及各科成绩组成。对学生的考试成绩进行有关统计:按某一科分数或平均分数高低次序,列出名次表,分数相同的为同一名次;按名次打印出每个学生的学号、姓名、总分以及各科成绩,并打印统计表。 三、概要设计 程序要有的功能: 1. 输入学生成绩 2. 保存成绩 3. 学生成绩排序 4. 学生成绩查询 5. 学生成绩清单 6. 退出管理系统 程序运行当中,通过选择对应的功能序号来实现所需功能。对输入的数据要有事先的分析,如果用户输入的数据与实际不相符如输入成绩的数值为负,则程序应输出相应的提示:“数据不存在”。再者就是,当再输入完相应的数据后,程序作出相应的提示,询问用户是否要继续输入。在排列学生成绩时候,如果出现成绩相同的情况,程序自动作出处理。 四、设计任务 将程序分为六个方面:1. 输入学生成绩、2. 保存成绩、3. 学生成绩排序、4. 学生成绩查询、5. 学生成绩清单、6. 退出管理系统。每个人负责两个方面的程序,其中侯蒙召负责1、2两个程序,杨天静负责3、4两个,张振陆负责5、6两个,最后交由组长侯蒙召组合整理,形成现在的总的程序。

流程图:

四、详细设计 源程序: #include #include #include #include struct Student {char name[20]; int no; int math; int program; int english; int chinese; int aver; }stu[100],t; int num=0; int menu() { int a; char s[20]; system("cls"); /*程序介绍*/ printf(" 欢迎使用学生成绩管理系统,该系统包括以下几项功能,请根据提示做相应操作\n"); printf(" 1->输入学生成绩\n"); printf(" 2->保存成绩\n"); printf(" 3->学生成绩排序\n"); printf(" 4->学生成绩查询\n"); printf(" 5->学生成绩清单\n"); printf(" 6->退出管理系统\n");/*选择操作*/ printf("\n"); printf(" 请选择要进行操作的编号:\n"); do{ printf("Enter you choice(0~6):"); scanf("%s",s); a=atoi(s); }

学生成绩管理系统-数据库课程设计

德州学院信息管理学院 课程设计报告 实习名称数据库课程设计 设计题目基于Java+MySQL的学生成绩管理系统的设计与实现实习时间 . 专业班级2011级计算机网络技术专 指导老师王丽丽 教学单位(盖章) 小组分工情况: 二〇一三年六月三十日 目录

摘要 (1) 1 引言错误!未定义书签。 问题的提出错误!未定义书签。 国内外研究的现状错误!未定义书签。 目的与分析错误!未定义书签。 2 程序的主要功能错误!未定义书签。 添加功能错误!未定义书签。 删除功能错误!未定义书签。 显示功能错误!未定义书签。 查找功能错误!未定义书签。 修改功能错误!未定义书签。 3 程序运行平台错误!未定义书签。 4 总体设计错误!未定义书签。 5 数据库设计错误!未定义书签。 数据库概念设计错误!未定义书签。 表结构错误!未定义书签。 视图错误!未定义书签。 6 模块分析错误!未定义书签。 添加模块错误!未定义书签。 显示模块错误!未定义书签。 修改模块错误!未定义书签。 查找模块错误!未定义书签。 删除模块错误!未定义书签。 登陆模块错误!未定义书签。 7 界面设计错误!未定义书签。 登陆界面错误!未定义书签。 学生信息添加界面错误!未定义书签。 学生成绩查询界面错误!未定义书签。 学生成绩修改界面错误!未定义书签。 8 系统测试错误!未定义书签。 9 结论错误!未定义书签。 10参考文献 (29) 德州学院学生成绩管理系统的设计与实现 摘要:学生成绩管理系统主要用于各类大学院校在教学这一部分的管理,是针对于教务处对课程、对学生、对学生成绩进行合理地安排以及统筹计划,以便让教务处以最短的工作时间内把学生的成绩核算出来,提高教务处的办事效率。同时,能够随时对学生基本信息、学生成绩进行各种查询,以便及时很好地对需要了解的信息得到相应的反馈,能有效的帮助教务处的工作,可使学院教职工减轻工作压力,

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)

c语言课程设计报告学生成绩信息管理系统源代码

实验报告 一、问题陈述及其需求分析 (一)问题陈述 学生信息管理系统是对学生信息的基本管理,其中包括以下及模块: (1)增加一个学生的信息(需输入要增加学生的所有信息); (2)统计本班学生总人数及男女生人数。 (3)分别按照学号查找学生的信息;若找到则输出该学生全部信息,否则输出查找不到的提示信息。 (4)按学号对所有学生信息排序,并输出结果; (5)删除一个学生的信息(需指定要删除学生的学号);同时显示删除后的结果。( 二) 功能需求分析 学生信息管理系统设计 学生信息包括:学号,姓名,性别,出生年月,电话 使之提供以下功能: 1、系统以菜单方式工作 2、建立链表并显示 3、插入新的学生信息 4、删除某学号的学生信息 5、查找某学号的学生信息 6、对学生信息排序 7、统计学生人数 8、输出学生信息 二总体设计 (一)模块 依据程序的数据结构,描述该程序的层次结构,如下图:

1、建立链表并显示 void createlist(struct stucode **r); 2、插入新的学生信息 void insert(struct stucode **r); 3、删除某学号的学生信息 void del(struct stucode **r); 4、查找某学号的学生信息 void search1(struct stucode *r); 5、对学生信息排序 void sort(struct stucode **r); 6、统计学生人数 void search2(struct stucode *r); 7、输出学生信息 void out(struct stucode *r); 1 建立链表并显示 2 添加学生信息 3 删除学生信息 息 4 按学号查找学生信 5 对学生信息排序 6统计学生人数 7输出学员信息 8 学生信息写入文件 0退出 main() 菜单函数

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

中南大学 《C语言程序设计》 课程设计报告课题名称:学生成绩管理系统 专业电气信息 学生姓名舒畅 班级0914 学号0909091424 指导教师穆帅 完成日期2010年7月10日 信息科学与工程学院

目录 1 课程设计的目的 (1) 2 设计内容与要求 (1) 3 主要技术指标及特点 (2) 3.1 登录界面显示 (2) 3.2登记学生资料 (4) 3.3保存学生资料 (5) 3.4 删除学生资料 (6) 3.5修改学生资料 (7) 3.6 查询学生资料 (8) 3.6统计学生资料(自加功能) (8) 3.8对学生资料进行排序 (9) 3.9程序主要代码 (9) 4 设计小结 (31)

成绩管理系统 1 课程设计的目的 1.加深对《C语言程序设计》课程知识的理解,掌握C语言应用程序的开发方法和步骤; 2.进一步掌握和利用C语言进行程设计的能力; 3.进一步理解和运用结构化程序设计的思想和方法; 4.初步掌握开发一个小型实用系统的基本方法; 5.学会调试一个较长程序的基本方法; 6.学会利用流程图或N-S图表示算法; 7.掌握书写程设计开发文档的能力(书写课程设计报告)。 2 设计内容与要求 设计内容:成绩管理系统 现有学生成绩信息,内容如下: 姓名学号 C 数学英语 shuchang 12 99 98 99 jiutian 32 87 68 87 changzi 33 98 89 99 jiutia 13 7 43 45 设计要求: ?封面(参见任务书最后一页) ?系统描述:分析和描述系统的基本要求和内容; ?功能模块结构:包括如何划分功能模块,各功能模块之间的结构图,以及各模块 的功能描述; ?数据结构设计:设计数据结构以满足系统的功能要求,并加以注释说明; ?主要模块的算法说明:即实现该模块的思路; ?运行结果:包括典型的界面、输入和输出数据等; ?总结:包括C语言程序设计实践中遇到的问题,解决问题的过程及体会、收获、

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

目录 ——学生成绩管理程序题目要求 (2) 设计目的 (2) 总体设计 (3) 详细设计 (3) 调试与测试 (12) 源程序 (14) 总结 (30) 学生成绩管理程序

一.题目要求 1.问题描述: 对在校学生几门课程的考试成绩进行统一管理.每个学生记录包括学号,姓名,年龄,数学,英语,物理成绩,默认以学号为序存放. 2.要求: (1)一个文件按以班为单位存储学生记录. (2)将允许的操作分为四种,以A,B ,C,D,E,F为标志: A:插入一个学生记录; B:修改学生记录; C:删除一个学生记录; D:查找一个学生记录; E:浏览学生成绩: F:退出 3.计算学生的总成绩. 4.按学号排序输出全班学生成绩表 . 二.设计目的 根据题目要求,由于学生信息是存放在文件中,所以应提供文件的输入,输出等操作;在程序中需要浏览学生的信息,应提供显示,查找,排序等操作;另外还应提供键盘式选择菜单实现功能选择. 三.总体设计 根据上面的需求分析,可以将这个系统分为以下模块:输入模块,修改模块,删除模块,查找模块,显示模块.

四.详细设计 1.主函数: 主函数一般设计得比较简单,只提供输入,处理和输出部分的函数调用,其中各功能模块用菜单方式选择. 流程图: Y [程序]: //#include "head.h" int menu_select() { char c; printf("\n\n"); printf(" | 1. 增加学生记录 5.统计信息 |\n"); printf(" | 2. 查询学生记录 6.打开文件 |\n"); printf(" | 3. 修改学生记录 7.保存文件 |\n"); printf(" | 4. 学生纪录排序 8.显示记录 |\n"); printf(" | 0. 退出系统 |\n"); printf("\n\n"); printf("请选择(0-8):"); c=getchar(); getchar(); return (c-'0'); } 2.输入模块:

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 (); //打开写有学生信息的文件的函数

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

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

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

void weihu(); /*维护界面函数*/ void new1(); /*新增一个学生成绩函数*/ void xiugai(); /*修改学生成绩*/ int 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(); /*停顿函数*/

相关文档
最新文档