c语言课程设计报告学生成绩管理系统

时间:2024.3.27

C语言课程设计报告

题    目:  学生成绩管理系统

设  计  者:  

专业班级:  计算机应用技术101班

学    号:   

指导教师:  

20##年 12 月 23  日

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

目录

一.系统软件环境………………………………(3)

二.课程设计目的………………………………(3)

三.内容与要求…………………………………(3)

四.程序主要功能………………………………(4)

五.系统功能设计………………………………(4)

六.函数实现功能说明…………………………(6)

七.调试分析……………………………………(9)

八.心得与体会…………………………………(10)

九.各功能模块的实现及其程序清单…………(10)

十、附页源程序清单……………………………(11)

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

一.系统软件环境:

本程序主要运行在:Visual C++ 6.0(主要)

Turbo C/C++ 3.0

                  Turbo C 2.0

二.课程设计目的:

   本课程设计的系统是早已在很多领域均有应用,是一个很不错的教学管理系统,而且其功能更是相当强大、界面更加友好的应用型软件。

而现在我的设计并非是重走旧路,而我的设计主要目的在于学习并深刻地掌握对C语言的基础知识以及其实践经验,更好地在以后的学习中能够更好地运用学习。特别是像这种比较多运用

到一些课本上没有教的知识,比如说,像清屏函数CLRSCR、菜单函数MENU等。许多都是一开始就没有涉及到的知识,在自已的设计中得到了提升,更加重要的一点就是增加了自已的实践操作能力。

三.内容与要求:

内容:成绩信息,内容如下:

姓名    学号   语文  数学   英语    

张明明  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),统计出在此分数段的学生情况。

(二)其它要求

(1)只能使用C/C++语言,源程序要有适当的注释,使程序容易阅读

(2)至少采用文本菜单界面(如果能采用图形菜单界面更好)

(3)可自动增加新功能模块(视情况可另外加分)

(4)写出课程设计报告,具体要求见相关说明文档

四.程序主要功能:

 本系统的主要功能有如下:

(1)、新输入学生的详细信息(包括:学号、姓名、语文成绩、数学成绩、英语成绩)

(2)、增加学生的信息

(3)、删除学生的信息

(4)、查询学生的信息

(5)、统计学生的成绩

注:由于本人能力有限,不能完全地将所有的功能模块做出来;但我相信我能够再接再厉,继续开发下去的,并向人性化发展。

五.系统功能设计:

(一)、本系统的总体框架图:

组织结构图

(二)、本系统的总体流程图:

 

c语言课程设计报告学生成绩管理系统

六.函数实现功能说明:

(1)、MENU函数

是定义一个菜单函数,其功能在于输出菜单界面供使用者选择。

其运行结果如下图:(以下的皆是在Visual C++ 6.0 中的运行结果)

(2)、CREAT函数

是定义用于创建新的链表,并带回一个指向链表头的指针。其功能是输入最初的学生信息。其运行结果如下图:

(3)、ADD函数

是定义用于再次输入学生信息,并将所有的学生信息按学号排序。

其运行结果如图:

(4)、DEL函数

是定义用于删除学生信息。

其运行如下图:

(5)、SEARCH函数

是定义义用于查询学生信息,主要是学号的查询。

其运行结果如下图:

(6)、TAXIS函数

  是定义用于统计学生的成绩信息,采用排序函数的方式对学号/数学等的排序。

其运行结果如下图:

七.调试分析:

因在不同的环境中运行是有不同的结果,以下分三个环境中说明:

(1)、在Turbo C 2.0

在这个环境下运行警告之处比较多,在调试时采用的图象处理函数在其它两个环境中不能运行。

例如:在原程序中加入

#include “graphics.h”

{ int gdtiver=DETECT,gmode;

  Initgraph(&gdriver,&gmode,“图象处理函数的路径”);

  Cleardevice();

Setbkcolor(颜色值);

}

**在Turbo C/C++ 3.0 中的Error提示是:

Undefined symboc _c closegraph in module ……

原因在于:TC 3.0中对图象的处理函数有不足之处。

**在Visual C++ 6.0 中的Error提示是:

BGI Error:Graghics not initialized (use’initgraph’)

Cannot open includefile:”graphics.h”

No such file or diretory

原因在于:VC 6.0中对图象处量理的函数与TC中的不一样。

(2)、在Turbo C/C++ 3.0

 在这个环境中运行到输入学生姓名时就出错:

Error:(在用户窗口中可以看到)

  Scanf:floating point formats not linked

Ab mormal program termination

**原因在于:连接浮点库错误。

**解决办法:在主函数中加入:fioat arg,*pointer=&arg;

即可运行。

(3)、在Visual C++ 6.0

  在此环境下运行比较好,其界面十分友好并且能正常运行。

如有需要可加入清屏函数:

#include “process.h”

{  system(“cls”);

}

八.心得与体会:

(1)、通过本次对C语言的深入学习,让我对C语言有了更多的了解并撑握更多的知识,成功地运用各类函数、循环变量、结构化的程序设计,以及结构体、指针的使用。

(2)、但在学习中发现,编程确实不是很好做的,并非是你想要就能完成的,它需要的是认真、仔细地对待每一个程序块,特别是在对指针的使用时更加困难,那些指针指来指去,一不小心就会看错,编译不出来。

(3)、由于学生的我只是大一而已,没能够完完全全地把程序做出来,而且程序中有许多不足之处不能够正确地将它改正,但总体上是可以运行的。

九.各功能模块的实现及其程序清单:

1)、各功能模块的实现(请参照第六点:函数实现功能说明)

2)、程序清单(请见附页)

参考文献

[1] 谭浩强编著.C程序设计第三版.北京:清华大学出版社,2005

[2] 林瑞仲等编著.C语言实例解析精粹.北京:人民邮电出版社,2005

附页:

学生成绩管理系统源程序清单

#include "stdio.h"

#include "stdlib.h"

#include "malloc.h"

#define ABC sizeof(struct scoreflie)

#define ABCDE

#include "string.h"

struct scoreflie

{int number;

char name[10];

float yuwen;

float shuxue;

float yingyu;

struct scoreflie *next;  };

typedef struct scoreflie score;

int n,k;

功能(1):创建链表,输入学生成绩信息

score *creat(void)

{score*head;

 score *p1,*p2,*p3,*max;

 int i,j;

 float fen;

 char t[10];

 n=0;

 p1=p2=p3=(score *)malloc(ABC);head=p3; /*开辟一个新单元*/

 printf("Please Input Students Message,Piess(0)is out!\n");

repeat1: printf("Input the numder(N.>0):");/*输入学号,学号应大于0*/

 scanf("%d",&p1->number);

while(p1->number<0)

{getchar();

printf("Is wrong, Input again the numder:");

scanf("%d",&p1->number);}/*输入学号为字符或小于0时程序报错,提示重新输入学号*/

if(p1->number==0)

goto end;/*当输入的学号为0时,转到末尾,结束创建链表*/

 else

 { p3=head;

 if(n>0)

 {for(i=0;i

 {if(p1->number!=p3->number)

  p3=p3->next;

 else

 { printf("The numder is Repetition,Input again!:\n");

 goto repeat1;/*当输入的学号已经存在,程序报错,返回前面重新输入*/

  } }      }      }

  printf("Input The Name:");

  scanf("%s",&p1->name);/*输入学生姓名*/

  printf("Input yuwen Score(0~100):");/*输入语文成绩,成绩应在0-100*/

  scanf("%f",&p1->yuwen);

 while(p1->yuwen<0||p1->yuwen>100)

 {getchar();

  printf("Is wrong,Input again:");/*输入错误,重新输入语文成绩直到正确为止*/

  scanf("%f",&p1->yuwen);}

   printf("Input shuxue Score(0~100):");/*输入数学成绩,成绩应在0-100*/

  scanf("%f",&p1->shuxue);

  while(p1->shuxue<0||p1->shuxue>100)

 {getchar();

  printf("Is wrong,Input again:");/*输入错误,重新输入数学成绩直到正确为止*/

   scanf("%f",&p1->shuxue);}

   printf("Input yingyu Score(0~100):");/*输入英语成绩,成绩应在0-100*/

   scanf("%f",&p1->yingyu);

 while(p1->yingyu<0||p1->yingyu>100)

 {getchar();

  printf("Is wrong,Input again:");

 scanf("%f",&p1->yingyu);}/*输入错误,重新输入英语成绩直到正确为止*/

     head=NULL;

 while(p1->number!=0)

  { n=n+1;

 if(n==1) 

  head=p1;

 else

  p2->next=p1;   p2=p1;

  p1=(score *)malloc(ABC);/*开辟一个新单元 以下的注释内容同上*/

  printf("Please Input Students Message,Piess(0)is out!\n");

repeat2:printf("Input the numder(N.>0):");

scanf("%d",&p1->number);

  while(p1->number<0)

 {getchar();

  printf("Is wrong, Input again the numder:");

  scanf("%d",&p1->number);}

   if(p1->number==0)

   goto end;

  else

  {p3=head;

  if(n>0)

  {for(i=0;i

更多相关推荐:
C语言学生成绩管理系统课程设计报告

C语言课程设计报告一问题描述题目七学生成绩管理系统设计学生成绩信息包括学期学号班别姓名四门课程成绩语文数学英语和计算机等主要功能1能按学期按班级完成对学生成绩的录入修改2能按班级统计学生的成绩求学生的总分及平均...

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

学生成绩管理系统课程设计报告书学生成绩管理系统单位分院班级学号姓名指导老师完成日期20xx年7月14日1学生成绩管理系统内容摘要摘要本次课程设计的课题是学生成绩管理系统本文介绍课程设计课题的选题意义说明了本系统...

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

学生成绩管理C语言课程设计实训报告信息科技学院学院电子信息学院专业电子信息工程班级学号姓名课题C语言课程设计指导教师报告成绩日期20xx年7月7日1C语言课程设计学生成绩管理系统本题目设计目的是训练学生的基本编...

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

数据结构课程设计报告学号0820xx106姓名付振华日期20xx年7月9日一课程设计题目学生成绩管理二需求分析给出n个学生的m门考试的成绩表每个学生的信息由学号姓名性别以及各科成绩组成对学生的考试成绩进行有关统...

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

计算机学院C语言程序设计报告书设计名称学生成绩管理系统专业软件工程指导老师班级姓名学号座号20xx615一实验目的1在编辑应用程序过程中逐步加深对C语言编程的理解2加强实践的能力动手能力同时进一步对所学的知识进...

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

目录摘要11需求分析22详细设计说明221功能模块图222数据结构设计3221学生成绩信息结构体3222单链表node结构体323功能模块设计4231主函数main执行流程4232输入学生信息模块4233查询学...

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

青岛农业大学课程设计报告题目学生成绩管理系统姓名田世强元成张斌学院工程系专业电子信息工程技术班级2班学号20xx0601320xx0601520xx06023指导教师曹红波20xx年9月16日目录一设计目的1二...

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

目录1需求分析2总体设计21功能模块设计22所有功能模块的流程图3详细设计31输入函数32输出函数4测试的步骤和内容41调试方法与步骤42测试结果的分析与讨论43测试过程中遇到的问题和解决方法5编码6课程设计总...

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

C语言课程设计报告0520xx班郑远成绩管理系统要求1输入记录2用指定格式显示全部记录3根据姓名查找记录4根据姓名删除记录5保存记录到文件6按序号显示记录7按姓名由小到大的顺序排序系统流程图程序代码includ...

C语言课程设计报告(学生成绩管理系统)

C语言课程设计报告学生成绩管理系统系统需求一当前学生信息通过结构体structstudent来保存学生的姓名学号性别语文数学英语和计算机等等相关信息并且通过cin函数来进行给当前学生输入初始信息二学生成绩查询输...

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

程序设计基础C课程设计报告学生成绩管理系统学生姓名学号20xx1班级指导老师日期20xx年6月21号课程设计任务书目录一设计目标1二总体设计11程序设计组成框图12程序设计流程图2三详细设计3四调试与测试5五分...

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

湖南文理学院课程设计报告课程名称计算机软件技术基础学院专业班级自动化06102班姓名王康学号20xx15010201指导教师朱明旱完成时间20xx年5月8日报告成绩学生成绩管理系统C语言课程设计一设计要求1收集...

c语言学生成绩管理系统课程设计报告(31篇)