当前位置:文档之家› C语言程序设计课程设计--歌手成绩管理系统

C语言程序设计课程设计--歌手成绩管理系统

C语言程序设计课程设计--歌手成绩管理系统
C语言程序设计课程设计--歌手成绩管理系统

《C语言程序设计课程设计》

课程设计报告

题目:歌手成绩管理系统

学院:计算机科学与技术

歌手成绩管理系统

一、系统菜单及任务

(1)系统菜单的主要功能

(1)输入歌手信息

(2)输出歌手信息

(3)歌手成绩排序

(4)记录歌手信息

(5)保存歌手信息

(6)添加歌手信息

(7)删除歌手信息

(8)退出系统

(2)实现的任务:完成对歌手比赛信息的各种管理。

歌手比赛系统

对一次歌手比赛的成绩进行管理,功能要求:1、输入每个选手的数据包括姓名、歌曲名、各评委的打分成绩,大众评委打分成绩,根据输入计算出总成绩。2、显示主菜单如下:1)输入信息2)显示信息3)结果排序4)保存信息5)显示结果6)退出系统。

二、设计内容:

确定能表述歌手信息的数据结构,至少要有姓名、歌曲名、各评委打分、大众评委打分等信息,它是本程序的核心数据结构,定义为如下的结构体类型:

struct Sing

{

float P1;

float P2;

float A[M];

};

struct Singer

{

int num;

float sum;

char singerName[10];

char singName1[20];

char singName2[20];

struct Sing singScore1;

struct Sing singScore2;

};

三、程序应具有以下基本功能:

信息输入:输入每个选手的数据包括姓名、各首歌曲的歌曲名、各评委的打分成绩,大众评委打分成绩

计算成绩:根据输入计算出各歌手的每首歌得分以及总得分。 成绩排序:按歌手的最后得分

保存结果:将结果保存在文本文件中。

要求界面良好 四、主要流程图

程序各模块(输入,显示等)结构图:

五、系统测试 程序进行实例如下 1、显示主菜单界面:

主要功能

输入歌手信息

输出歌手信息

歌手成绩排序

记录歌手信息

保存歌手信息

添加歌手信息

删除歌手信息

退出系统

2、选择1:运行界面如下

六、源程序及系统文件使用说明

#include

#include/*动态存储分配函数*/

#include/*字符函数和字符串函数*/ #include/*数学函数*/

#define M 5

int N;

struct Sing/*歌曲信息结构体*/

{

float P1;

float P2;

float A[M];

};

struct Singer/*歌手信息结构体*/

{

int num;

float sum;

char singerName[10];

char singName1[20];

char singName2[20];

struct Sing singScore1;

struct Sing singScore2;

};

struct Singer Sin[200];

void print()

{

printf("- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n");

printf("* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n");

printf(" 欢迎进入歌手成绩管理系统\n");

printf("- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n");

printf("* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n");

}

void menu();

void input()/*输入歌手信息*/

{

int i;

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

{

printf("请输入歌手编号:");

scanf("%d",&Sin[i].num );

printf("请输入歌手姓名:");

scanf("%s",Sin[i].singerName );

printf("请输入歌曲1名称:");

scanf("%s",Sin[i].singName1 );

printf("请输入歌曲1大众评委打分:");

scanf("%f",&Sin[i].singScore1.P1);

printf("请输入歌曲1专业评委1打分:");

scanf("%f",&Sin[i].singScore1.A[0]);

printf("请输入歌曲1专业评委2打分:");

scanf("%f",&Sin[i].singScore1.A[1]);

printf("请输入歌曲1专业评委3打分:"); scanf("%f",&Sin[i].singScore1.A[2]);

printf("请输入歌曲1专业评委4打分:"); scanf("%f",&Sin[i].singScore1.A[3]);

printf("请输入歌曲1专业评委5打分:"); scanf("%f",&Sin[i].singScore1.A[4]);

printf("歌曲1专业评委打分为:");

Sin[i].singScore1.P2=(

Sin[i].singScore1.A[0]+

Sin[i].singScore1.A[1]+

Sin[i].singScore1.A[2]+

Sin[i].singScore1.A[3]+

Sin[i].singScore1.A[4])/5;

printf("%f\n",Sin[i].singScore1.P2);

printf("请输入歌曲2名称:");

scanf("%s",Sin[i].singName2 );

printf("请输入歌曲2大众评委打分:");

scanf("%f",&Sin[i].singScore2.P1);

printf("请输入歌曲2专业评委1打分:"); scanf("%f",&Sin[i].singScore2.A[0]);

printf("请输入歌曲2专业评委2打分:"); scanf("%f",&Sin[i].singScore2.A[1]);

printf("请输入歌曲2专业评委3打分:"); scanf("%f",&Sin[i].singScore2.A[2]);

printf("请输入歌曲2专业评委4打分:"); scanf("%f",&Sin[i].singScore2.A[3]);

printf("请输入歌曲2专业评委5打分:"); scanf("%f",&Sin[i].singScore2.A[4]);

printf("歌曲2专业评委打分为:");

Sin[i].singScore2.P2=(

Sin[i].singScore2.A[0]+

Sin[i].singScore2.A[1]+

Sin[i].singScore2.A[2]+

Sin[i].singScore2.A[3]+

Sin[i].singScore2.A[4])/5;

printf("%f\n",Sin[i].singScore2.P2);

printf("该歌手的总成绩为:");

Sin[i].sum = Sin[i].singScore1.P1+Sin[i].singScore1.P2+

Sin[i].singScore2.P1+Sin[i].singScore2.P2 ;

printf("%lf\n",Sin[i].sum);

}

menu();

}

void output()/*输出歌手信息*/

{

int i;

printf("输出歌手信息是:\n");

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

{

printf("编号歌手歌曲1 大众评委专业评委歌曲2 大众评委专业评委总分:\n");

printf("%d\t%4s\t%4s\t%4.2f\t%6.2f\t%6s\t%8.2f\t%4.2f\t%6.2f\t\n",

Sin[i].num ,Sin[i].singerName,

Sin[i].singName1,

Sin[i].singScore1.P1,Sin[i].singScore1.P2,

Sin[i].singName2,

Sin[i].singScore2.P1,Sin[i].singScore2.P2,

Sin[i].sum);

}

menu();

}

void sort()/*对歌手成绩进行排序*/

{

float t,d,e,g,h;

int i,j,m;

char b[10],c[20],f[20];

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

for(i=0;i<2-j;i++)

if(Sin[i].sum>Sin[i+1].sum )

{

t=Sin[i].sum ;

Sin[i].sum =Sin[i+1].sum;

Sin[i+1].sum =t;/*分数排序*/

m=Sin[i].num ;

Sin[i].num =Sin[i+1].num ;

Sin[i+1].num =m;/*编号排序*/

strcpy(b,Sin[i].singerName);

strcpy(Sin[i].singerName,Sin[i+1].singerName);

strcpy(Sin[i+1].singerName,b);/*名字复制替换进行名字排序*/

strcpy(c,Sin[i].singName1);

strcpy(Sin[i].singName1,Sin[i+1].singName1);

strcpy(Sin[i].singName1,c);/*歌曲1名称排序*/

d=Sin[i].singScore1.P1;

Sin[i].singScore1.P1=Sin[i+1].singScore1.P1;

Sin[i+1].singScore1.P1=d;/*歌曲1大众评委打分的排序*/

e=Sin[i].singScore1.P2;

Sin[i].singScore1.P2=Sin[i+1].singScore1.P2;

Sin[i+1].singScore1.P2=e;/*歌曲1专业评委打分的排序

strcpy(f,Sin[i].singName2);

strcpy(Sin[i].singName2,Sin[i+1].singName2);

strcpy(Sin[i+1].singName2,f);/*歌曲2名称的排序*/

g=Sin[i].singScore2.P1;

Sin[i].singScore2.P1=Sin[i+1].singScore2.P1;

Sin[i+1].singScore2.P1=g;/*歌曲2大众评委打分的排序*/

h=Sin[i].singScore2.P2;

Sin[i].singScore2.P2=Sin[i+1].singScore2.P2;

Sin[i+1].singScore2.P2=h;/*歌曲2专业评委打分的排序*/

}

printf("排序后的结果为:\n");

printf("编号姓名总成绩:\n");

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

printf("%d\t%s\t%lf\t\n",

Sin[i].num,Sin[i].singerName,

Sin[i].sum);

menu();

}

void save()/*将歌手信息保存到文本文件中*/

{

FILE *fp;

int i;

if((fp=fopen("f:\\lin","wb"))==NULL)

{

printf("cannot open file\n");

return;

}

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

if(fwrite(&Sin[i],sizeof(struct Singer),1,fp)==1)

{

printf("文件写入错误\n");

break;

}

fclose(fp);

}

void WritetoText(int n)/*将所有记录写入文件*/

{

int i=0;

FILE *fp;/*定义文件指针*/

char filename[200];

printf("将所有记录写入文件:\n");/*输入文件名*/

printf("输入文件名:\n");

scanf("%s",filename);

if((fp=fopen(filename,"a"))==NULL)/*打开文件*/

{

printf("不能打开文件:\n");

system("pause");

return;/*终止程序*/

}

fprintf(fp,"%d\n",n);/*循环写入数据*/

fprintf(fp,"编号歌手歌曲1 大众评委专业评委歌曲2 大众评委专业评委总分:\n");

while(i

{

fprintf(fp,"%d\t%2s\t%2s\t%lf\t%lf\t%6s\t%lf\t%lf\t%lf\t\n", Sin[i].num, Sin[i].singerName,

Sin[i].singName1,Sin[i].singScore1.P1,Sin[i].singScore1.P2,

Sin[i].singName2,Sin[i].singScore2.P1,Sin[i].singScore2.P2,

Sin[i].sum);

i++;

}

fclose(fp);/*关闭文件*/

printf("Successed!\n");

//返回成功信息

menu();

}

void Tianjia_a_record()/*添加函数*/

{

int i,j;

int a;

printf("请输入一个歌手的编号:");

scanf("%d",&a);

for(i=0;i

if(a==Sin[i].num)/*两个整数进行比较*/

{

printf("不能进行添加操作");

j++;

break;

}

if(j==0)/*新添加的歌手编号与原歌手中没有相同的*/ {

Sin[i].num=a;

printf("歌手名:");

scanf("%s",Sin[i].singerName);

printf("歌曲1的名称:");

scanf("%s",Sin[i].singName1);

printf("歌曲1的大众评委打分:");

scanf("%f",&Sin[i].singScore1.P1);

printf("歌曲1的专业评委1打分:");

scanf("%f",&Sin[i].singScore1.A[0]);

printf("歌曲1的专业评委2打分:");

scanf("%f",&Sin[i].singScore1.A[1]);

printf("歌曲1的专业评委3打分:");

scanf("%f",&Sin[i].singScore1.A[2]);

printf("歌曲1的专业评委4打分:");

scanf("%f",&Sin[i].singScore1.A[3]);

printf("歌曲1的专业评委5打分:");

scanf("%f",&Sin[i].singScore1.A[4]);

printf("歌曲1的专业评委打分:"); scanf("%f",&Sin[i].singScore1.P2);

printf("歌曲2的名称:");

scanf("%s",Sin[i].singName2);

printf("歌曲2的大众评委打分:"); scanf("%f",&Sin[i].singScore2.P1); printf("歌曲2的专业评委1打分:"); scanf("%f",&Sin[i].singScore2.A[0]); printf("歌曲2的专业评委2打分:"); scanf("%f",&Sin[i].singScore2.A[1]);

printf("歌曲2的专业评委3打分:"); scanf("%f",&Sin[i].singScore2.A[2]); printf("歌曲2的专业评委4打分:"); scanf("%f",&Sin[i].singScore2.A[3]);

printf("歌曲2的专业评委5打分:"); scanf("%f",&Sin[i].singScore2.A[4]); printf("歌曲2的专业评委打分:"); scanf("%f",&Sin[i].singScore2.P2);

printf("该歌手的总成绩:");

scanf("&f",&Sin[i].sum);

save();

N++;

system("pause");

}

}

void name_Delete() /*按照姓名删除歌手信息*/

{

int i,j=0;

char a[20];

printf("\n输入一个歌手的姓名");

scanf("%s",a);

for(i=0;i

if(strcmp(Sin[i].singerName,a)==0)

{

Sin[i].num=Sin[i+1].num;/*编号*/

strcpy(Sin[i].singerName,Sin[i+1].singerName);/*歌手名*/

strcpy(Sin[i].singName1,Sin[i+1].singName1);/*歌曲1名称*/

C或C++课程设计题目 (1)

供选择的C或C++语言程序课程设计题目 第一类题目应用类 题目1:年历显示。 功能要求: (1)输入一个年份,输出是在屏幕上显示该年的日历。假定输入的年份在1940-2040年之间。(2)输入年月,输出该月的日历。 (3)输入年月日,输出距今天还有多少天,星期几,是否是公历节日。 题目2:小学生测验 面向小学1~2年级学生,随机选择两个整数和加减法形成算式要求学生解答。 功能要求: (1)电脑随机出10道题,每题10分,程序结束时显示学生得分; (2)确保算式没有超出1~2年级的水平,只允许进行50以内的加减法,不允许两数之和或之差超出0~50的范围,负数更是不允许的; (3)每道题学生有三次机会输入答案,当学生输入错误答案时,提醒学生重新输入,如果三次机会结束则输出正确答案; (4)对于每道题,学生第一次输入正确答案得10分,第二次输入正确答案得7分,第三次输入正确答案得5分,否则不得分; (5)总成绩90以上显示“SMART” ,80-90显示“GOOD”,70-80显示“OK”,60-70显示“PASS”,60以下“TRY AGAIN” 。

题目3 运动会比赛计分系统 要求:初始化输入:N-参赛学校总数,M-男子竞赛项目数,W-女子竞赛项目数 各项目名次取法有如下几种: 取前5名:第一名得分7分,第二名得分5,第三名得分3,第四名得分2,第五名得分1;取前3名:第一名得分5,第二名得分3,第三名得分2; 功能要求: (1)系统以菜单方式工作 (2)由程序提醒用户填写比赛结果,输入各项目获奖运动员信息。 (3)所有信息记录完毕后,用户可以查询各个学校的比赛成绩 (4)查看参赛学校信息和比赛项目信息等。 题目4:学生学籍管理系统 用数据文件存放学生的学籍,可对学生学籍进行注册,登录,修改,删除,查找,统计,学籍变化等操作。 功能要求: (1)系统以菜单方式工作。 (2)登记学生的学号,姓名,性别,年龄,籍贯,系别,专业,班级;修改已知学号的学生信息;(3)删除已知学号的学生信息; (4)查找已知学号的学生信息; (5)按学号,专业输出学生籍贯表。 (6)查询学生学籍变化,比如入学,转专业,退学,降级,休学,毕业。 题目5:排班系统 学校实验楼有7名保安人员:钱、赵、孙、李、周、吴、陈。由于工作需要进行轮休制度,一星期中每人休息一天。预先让每一个人选择自己认为合适的休息日。请编制程序,打印轮休的所有可能方案。当然使每个人都满意,例如每人选择的休息日如下: 钱:星期一、星期六 赵:星期二、星期四 孙:星期三、星期日 李:星期五 周:星期一、星期四、星期六 吴:星期二、星期五 陈:星期三、星期六、星期日 运行结果: Solution: 1 赵钱孙李周吴陈 ============================================================= 星期四星期一星期三星期五星期六星期二星期日 Solution: 2 赵钱孙李周吴陈 ============================================================= 星期四星期一星期日星期五星期六星期二星期三 Solution: 3 赵钱孙李周吴陈

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

淮阴工学院 数据结构课程设计报告 选题名称:学生成绩管理系统 系(院):数理学院 专业:信息和计算科学 班级:计科1102班 姓名:徐连喜学号: 1104101233 指导教师:周海岩 学年学期:2011 ~ 2012 学年第 1 学期 2012 年06 月06 日 【摘要】

21世纪,科学技术突飞猛进,经济知识和信息产业初见端倪,特别是信息技术和网络技术的讯速发展和广泛使用,对社会的政治,经济,军事,文化等领域产生越来越深刻。学生成绩管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要。本论文叙述到的学生成绩管理系统是用IIS+ASP网页编程+ACCESS数据库+DREAMWEAVER MX 2004+SQL查询语言实现的。重点介绍了学生成绩管理系统的实现过程:包括系统分析,系统调查,功能设计,数据库设计,系统实现,系统测试和调试等。本系统主要功能有查询学生成绩、单个添加学生成绩、批量添加学生成绩、删除学生成绩、管理页面和修改管理员密码等内容。 【关键词】 成绩管理;成绩查询;C++

目录 中文摘要。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 1 1绪论。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 4 1.1 选题背景。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 5 1.2 需求分析。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 6 2总体设计。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。7 2.1程序设计组成框图。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。8 2.2 模块功能说明。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。9 2.3 程序流程图。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。10 2.4 主要函数之间相互调用。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。11 3 在设计过程中的感受。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。12 致谢。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。13 参考文献。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。14附录:源程序清单。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。15 1.绪论 1.1 选题背景 为了提高高校学生信息的管理效率,方便对学生信息进行管理、学校里面的学生和管理员方便去管理和查询学生信息,如再要进行查询,就得在众多的学生信息中查找自己的成绩信息,面对学院大量的学生信息,怎么可以即时而方便的管理,学生只要登录本系统就可以查找到自己的成绩信息,而管理员也方便去管理每学期的学生的成绩信息。建立一个学生信息管理系统,使学生信息管理工作规范化,系统化,程序化,避免学生管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改学生信息是必须而且十分迫切的工作。 2.1 需求分析

大赛评分系统

《程序设计基础(C语言)》 课程设计说明书 学院:XXXXXXXX 班级: XXXXXX 学号: XXXXXXXXX 姓名: XXX 教师: XXX 日期: 2012年月日

题目名称:大赛评分系统 算法分析:(提示:该部分内容填写课程设计所实现的系统具有哪些功能模块,每个模块能完成的功能及需要考虑的逻辑算法。) 1.该程序功能 (1)在大赛中,有十个评委为参赛的选手打分,分数为1~100分。选手最后得分为:去掉一个最高分和一个最低分后其余8个分数的平均值。 (2)同时对评委评分进行裁判,即在10个评委中找出最公平(即评分最接近平均分)和最不公平(即与平均分的差距最大)的评委。 2.程序实现 程序的要求是根据十个评委对参赛选手的打分情况,求出这个选手的平均成绩和最公平及最不公平的裁判。首先,我先考虑到程序的数据输入,可以用scanf 函数来解决,并将输入的数据存放于数组中。随后对存放在数组中的数据进行排序,这步为执行找出最不公平的裁判提高了效率,只需将排好序的数组的首尾分值与平均值进行比较即可。将排好序的数组中间的八个数求平均值即为此选手的成绩,可见排序法可大大的简化程序。接下来是最后一个任务就是找最公平的裁判,此过程我使用拆半法,先将靠近中间的一个裁判假设为最公平的,再将他前面的裁判与之比较,找出前半部分的最公平的裁判,再将之与后半部分的进行比较,得出最终的最公平的裁判。为了方便管理员更好的使用界面操作,我还设置了每输入完一组数据并得到结果后,或接着输入下组数据或按0跳出界面。 流程设计: 1.分数的输入部分; 2.对分数进行的排序部分; 3.计算平均值的部分; 4.找出最不公平裁判部分; 5.找出最公平裁判部分; 6.数据的输出部

学生成绩信息管理系统

西安文理学院 信息工程学院 软件编程课程设计报告 设计题目:学生成绩管理系统课程设计 学生学号:020******* 专业班级:物联网工程一班 学生姓名:张旺阳 学生成绩: 指导教师(职称): 课题工作时间:2015-11-25 至2015-12-9 信息工程学院软件编程课程设计任务书

指导教师: 日期:2015年11月25日

成绩评定表 学生姓名:张旺阳学号:020******* 专业/班级:物联网工程一班

目录 1. 概述 (1) 1.1课题背景 (1) 1.2系统功能 (3) 1.3设计要求 (4) 2. 概要设计 (5) 2.1系统功能模块 (5) 2.2各模块流程图 (6) 3. 详细设计 (8) 3.1 程序中使用的数据结构 (8) 3.2 函数列表 (1) 4. 设计结果与分析 (1) 2 5. 总结与体会 (1) 5 参考文献········································································· X 附录主要程序代码····························································· X

1.1课题背景 随着计算机的普及,计算机在生活中得到越来越多的应用,其中在计算机上运行的各种软件在解决生活中的实际问题中起到重大的作用,而目前在编写应用程序时,c++以其高效及灵活性成为大多数程序设计者的首选,其次对于普通用户者,利用c++语言设计出适用的小型软件对解决生活中的繁琐问题有很大的作用。 在学校或班级,教师经常会对某次考试中的所有学生的成绩进行统计和管理,由于学生数目经常繁多,所以在处理统计学生总成绩和平均成绩时工作会相对繁琐,所以针对这种情况,同时我分析了成绩管理所需要的功能,在利用C++语言及VC++6.0程序运行平台之下,设计一种小型的学生成绩管理系统。 1.2系统功能 1.录入 2.修改 3.求总分 4.求平均分 5.查询 6.排序 1.3设计要求 学生成绩信息包括:学期,学号,班别,姓名,四门课程成绩(语文、数学、英语和计算机)。 主要功能: (1)能按学期、按班级完成对学生成绩的录入、修改 (2)能按班级统计学生的成绩,求学生的总分及平均分,设计并输出统计报表 (3)能查询学生成绩,不及格科目及学生名单 (4)能按班级输出学生的成绩单 (5)能按班级,按课程,对学生成绩进行排序。 要求:使用二进制文件方式存储数据,系统以菜单方式工作 第二章概要设计 2.1系统功能模块 (1)创建主菜单 (2)实现学生成绩信息录入 (3)实现学生成绩信息查询 (4)实现学生成绩信息修改 (一)修改某个学生的成绩

C语言程序课程设计—歌手比赛系统

淮南师范学院课程设计报告 歌手比赛系统 姓名:胡欢欢 学号:09 专业:计算机科学与技术 班级:10级(1)班 指导教师:彭飞 职称:XXX 2013年3月7日

目录 1.引言 ............................................................................................................... 错误!未定义书签。 2.系统设计........................................................................................................ 错误!未定义书签。 设计分析................................................................................................... 错误!未定义书签。 项目描述....................................................................................... 错误!未定义书签。 程序结构................................................................................................. 错误!未定义书签。 程序划分........................................................................................... 错误!未定义书签。 程序结构流程图............................................................................. 错误!未定义书签。 3.系统实现........................................................................................................ 错误!未定义书签。 各模块的功能及程序说明..................................................................... 错误!未定义书签。 系统主要功能模块的运行效果图........................................................... 错误!未定义书签。 4.设计体会........................................................................................................ 错误!未定义书签。 5.参考文献........................................................................................................ 错误!未定义书签。 6.源程序代码.................................................................................................... 错误!未定义书签。 1.摘要 C语言是一门计算机高级语言,它在Microsoft开发的软件Visual C++ 中执行,C语言具有很多优点: 语言具有丰富的数据类型,众多的运算符,体现结构化程序设计的优良控制结构,具有抽象功能及体现信息隐蔽思想的函数。 语言的应用几乎遍及了程序的各个领域,如科学家,系统程序设计,字处理软件和电子表格软件的开发,信息管理,计算机辅助设计,等方面。 语言简洁,为完成某一功能所写的源程序代码往往比其他语言写得短,便利程序输入工作量减少。 4.若程序员在书写过程时严格遵循ANSI C标准,则其源代码可不作修改,即可用于各种型号的计算机和各种操作系统,因此,C语言具有良好的可移植性。 本次实践我们选择了使用C语言编写基于链表的程序,不仅使大家对程序设计、编程方法有了进一步提高,而且掌握了使用C语言动态内存分配及数据结构等方面的知识。 2.系统设计 设计分析 项目描述 1.项目名称:歌手打分系统

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

河南理工大学 计算机科学与技术学院 课程设计报告 200 7 — 200 8 学年第二学期 课程名称数据库课程设计 设计题目学生成绩管理系统 学生姓名 ^0^ 学号 专业班级 指导教师申自浩 2008 年 7 月 1 日

? 1 问题描述 1.1 背景 1)某大学有学生若干万名,每个学生每学期必须学习若干门课程。 2)每个学生有学号、姓名、性别、班级、出生日期等基本信息。 3)每门课程有课程号,课程名称、任课教师、学分等信息。 4)学校需要对每个学生的基本信息、所学课程、成绩进行统一管理,以便于对信息进行查询、浏览和修改。 1.2 数据需求 学生成绩管理系统主要用于学生成绩信息管理,据分析学生成绩管理系统的数据表可浓缩为:学生基本信息表、课程基本信息表和学生成绩信息表。根据学校的情况,可按下面的步骤来分析: (1) 确定学生所在的院系、所学的专业以及所在的班级。 (2) 确定学生所在班级的课程以及该课程学生的成绩;另外还需要知道学生所在 班级、学号和学期。 (3) 分析学生的基本信息,如姓名、性别、出生年月、家庭住址、联系电话。 (4) 用户信息分析,通常包括用户名和密码。 ? 2 解决方案 ( 或数据库系统设计 ) 2.1 E-R 模型设计 课程 学生 班级 学号 出生日期 姓名 查询成绩 任课教师 课程号 课程名称 学分 成绩 性别

根据E—R图,将其转化为如下数据实体,数据库:学生成绩管理系统.dbc,包括如下的表和视图: 1)学生登记表——学生表.dbf。 字段名称字段类型字段宽度 xh 字符型 10 xm 字符型 6 xb 字符型 2 csrq 日期型 8 bj 字符型 4 2)课程登记表——课程表.dbf。 字段名称字段类型字段宽度 kch 字符型 2 kcm 字符型 10 js 字符型 10 xf 字符型 10 3)成绩登记表——成绩表.dbf 字段名称字段类型字段宽度 xh 字符型 10 kch 字符型 2 cj 数值型 3 4) 借书视图(lyxview)。 为了进行浏览总表的需要,需要设计了一个总表浏览视图,该视图从学生表.dbf等3个表中提取了10个字段的数据: 学生表.xh 学生表.xm 学生表.xb 学生表.csrq 学生表.bj 课程表.kch 课程表.kcm 课程表.js 课程表.xf 成绩表.cj 其视图关系可由以下SQL语句定义: SELECT 学生表.*, 课程表.*, 成绩表.cj;

歌手大赛评分细则

校园风采大赛评分细则 一、评分标准: 1.参赛曲目内容建康,曲风积极向上;(2分) 2.吐字清晰,歌词准确,音色优美,能准确把握歌曲节奏;(2分) 3.演唱完整,富有感情,观众反响好;(2分) 4.视歌曲难度,酌情给分;(2分) 5.着装得体,举止大方。(2分) 二、注意事项: 1.评委根据“评分标准”综合评分; 2.参赛选手自带伴奏,但须消除原唱,未消除者视为作弊, 取消参赛资格。(入围赛采用个人清唱) 3.采用十分计分制,去掉一个最高分,去掉一个最低分,取 剩余评委给出的平均成绩为该选手最终得分。 4.计算分数时应精确到小数点后一位。 三、比赛规则: 1.所有参赛选手应于比赛前15分钟到达比赛现场并签到,迟 到或请假者按弃权处理; 2.每位参赛选手比赛时间为3分钟; 3.参赛选手自带伴奏音乐,也可清唱,或自带伴奏乐器; 4.未被叫号选手应自觉保持赛场周边安静,严禁大声喧哗。

四.赛事安排: 入围赛分2天进行,分别取当天的前16名组成32强入围晋级赛在32强角逐中产生,取其排名前16名晋级 半决赛将在16名选手中取出前8名进入最终的决赛 决赛将在8名选手中选出第一名、第二名、第三名、最佳风采奖、最佳人气奖。同时将结合前几场比赛最终选 出15名优秀奖和两个最佳组织奖。 (比赛时间详见当天公布栏海报) 学生团体联合会 园声歌舞团 二○○八年三月三十日

园声歌舞团校园歌手大赛评委安排 评委会成员名单: 朱贝贝郭文渊田波李文涛邓晓芬卢燕史芯白帆呼延浩玄苏媛邹毅周安 4月7日 16:30 图书楼508 入围赛 评委名单:呼延浩玄苏媛李文涛邓晓芬 周安卢燕 4月8日 16:30 图书楼508 入围赛 评委名单:李文涛白帆史芯邹毅 周安卢燕 4月10日 16:30 2号教学楼 115 32进16比赛评委名单:白帆呼延浩玄苏媛邹毅 周安史芯卢燕 4月13日 15:00 星光俱乐部半决赛 16进8 评委名单:安总郭文渊田波李文涛 呼延浩玄苏媛周安 4月15日 20:00 2号教学楼701 总决赛 8进3 评委名单:朱贝贝郭文渊田波邓晓芬 卢燕史芯李文涛

学生成绩信息管理系统

学生成绩信息管理系统 1 引言................................. 错误!未定义书签。 设计目的与要求....................... 错误!未定义书签。 设计内容.............................. 错误!未定义书签。2系统需求与功能分析 ..................... 错误!未定义书签。 系统需求分析......................... 错误!未定义书签。 系统功能分析.......................... 错误!未定义书签。3总体结构设计........................... 错误!未定义书签。 系统的结构设计........................ 错误!未定义书签。 系统管理流程图........................ 错误!未定义书签。 4 系统详细设计和系统实现................. 错误!未定义书签。 5 系统测试............................... 错误!未定义书签。 6 结束语................................. 错误!未定义书签。参考文献................................. 错误!未定义书签。附录1:链表结构化设计源程序清单 ......... 错误!未定义书签。附录2:顺序表结构化设计源程序清单............... ... . (26)

1 引言 设计目的与要求 该学生信息管理系统采用C++语言开发研制,针对学生成绩及其数据特点,可以全面实现对学生成绩的插入、查询、修改、删除和输出等功能的计算机管理。它能使学生信息数据的工作人员从繁重的工作中解脱出来,大大减轻了工作量,减少人为的工作失误,全面提高学生信息管理的效率,从而使学校对于学生成绩的管理水平和技术水平跃上一个新的台阶。 (1) 程序要添加适当的注释,程序的书写要采用缩进格式。 (2) 程序要具在一定的健壮性,即当输入数据非法时,程序也能适当地做出反应,如插入删除时指定的位置不对等等。 (3) 程序要做到界面友好,在程序运行时用户可以根据相应的提示信息进行操作。 (4) 根据实验报告模板详细书写实验报告,在实验报告中给出链表根据姓名进行查找的算法和插入算法的流程图。 设计内容 定义一个包含学生信息(学号,姓名,成绩)的的顺序表和链表,使其具有如下功能:

C语言课程设计报告—歌星大奖赛评分系统

C语言课程实习报告课程名称:歌星大奖赛 学院:信息工程学院 专业:通信工程 班级: 学号: 姓名: 指导老师: 第一部分:课程设计编号、名称、内容 名称:歌星大奖赛 内容: 【要求】 (1)在歌星大奖赛中,有十个评委为参赛的选手打分,分数为1~100分。选手最后得分为:去掉一个最高分和一个最低分后其余8个分数的平均植。请编写一个程序实现。 (2)同时对评委评分进行裁判,即在10个评委中找出最公平(即评分最接近平均分)和最不公平(即与平均分的差距最大)的评委。 【提示】 一、需求分析 这个问题的第一个要求算法比较简单,但是要注意在程序中判断最大、最小值的变量是如何赋值的。第二个要求为了考虑效率,要用到排序技术。

第二部分:程序总体设计思路 由于C语言是面对过程的语言,故我的设计思路是根据目标程序运行的过程来编写的。 在编写本程序的过程中,首先我借助购买的指导材料,了解了一些目标程序运行的次序与界面的操作方法,然后按照题目的具体要求进行思考和设计。 具体的设计思路如下: 程序的要求是根据十个评委对歌手的打分情况,求出这个歌手的平均成绩和最公平及最不公平的裁判。首先,我先考虑到程序的数据输入,可以用scanf函数来解决,并将输入的数据存放于数组中。随后对存放在数组中的数据进行排序,这步为执行找出最不公平的裁判提高了效率,只需将排好序的数组的首尾分值与平均值进行比较即可。将排好序的数组中间的八个数求平均值即为此歌手的成绩,可见排序法可大大的简化程序。接下来是最后一个任务就是找最公平的裁判,此过程我使用拆半法,先将靠近中间的一个裁判假设为最公平的,再将他前面的裁判与之比较,找出前半部分的最公平的裁判,再将之与后半部分的进行比较,得出最终的最公平的裁判。为了方便管理员更好的使用界面操作,我还设置了每输入完一组数据并得到结果后,或接着输入下组数据或按0跳出界面。 整个程序的设计思路到此结束。 第三部分:程序功能划分、图示及流程图 【功能模块划分及其流程图】 本程序功能模块根据程序设计的需求,综合程序的实用性、人性化、智能化的考虑,将程序划分为6个部分分别编写,程序主体功能将由这6个部分来完成。这6 个部分依次是: 1.分数的输入部分; 2.对分数进行的排序部分; 3.计算平均值的部分; 4.找出最不公平裁判部分; 5.找出最公平裁判部分; 6.数据的输出部分 总体设计:

学生成绩信息管理系统

学生成绩信息管理系统 1 引言 ................................................................................................ 1 1.1 设计目的与要求........................................................................ 1 1.2设计容 ......................................................................................... 12系统需求与功能分析 ......................................................................... 1 2.1 系统需求分析............................................................................ 2 2.2系统功能分析............................................................................. 23总体结构设计 ..................................................................................... 3 3.1系统的结构设计......................................................................... 3 3.2系统管理流程图......................................................................... 3 4 系统详细设计和系统实现 ................................................................ 4 5 系统测试 ........................................................................................ 10 6 结束语 ............................................................................................ 15参考文献 ............................................................................................ 15附录1:链表结构化设计源程序清单............................................. 16附录2:顺序表结构化设计源程序清单............... ... . (26)

C语言课程设计报告—歌星大奖赛评分系统

C语言课程实习报告 课程名称:歌星大奖赛 学院:信息工程学院 专业:通信工程 班级: 学号: 姓名: 指导老师: 第一部分:课程设计编号、名称、内容 名称:歌星大奖赛 内容: 【要求】 (1)在歌星大奖赛中,有十个评委为参赛的选手打分,分数为1~100分。选手最后得分为:去掉一个最高分和一个最低分后其余8个分数的平均植。请编写一个程序实现。(2)同时对评委评分进行裁判,即在10个评委中找出最公平(即评分最接近平均分)和最不公平(即与平均分的差距最大)的评委。 【提示】 一、需求分析 这个问题的第一个要求算法比较简单,但是要注意在程序中判断最大、最小值的变量是如何赋值的。第二个要求为了考虑效率,要用到排序技术。 第二部分:程序总体设计思路 由于C语言是面对过程的语言,故我的设计思路是根据目标程序运行的过程来编写的。 在编写本程序的过程中,首先我借助购买的指导材料,了解了一些目标程序运行的次序与界面的操作方法,然后按照题目的具体要求进行思考和设计。 具体的设计思路如下:

程序的要求是根据十个评委对歌手的打分情况,求出这个歌手的平均成绩和最公平及最不公平的裁判。首先,我先考虑到程序的数据输入,可以用scanf函数来解决,并将输入的数据存放于数组中。随后对存放在数组中的数据进行排序,这步为执行找出最不公平的裁判提高了效率,只需将排好序的数组的首尾分值与平均值进行比较即可。将排好序的数组中间的八个数求平均值即为此歌手的成绩,可见排序法可大大的简化程序。接下来是最后一个任务就是找最公平的裁判,此过程我使用拆半法,先将靠近中间的一个裁判假设为最公平的,再将他前面的裁判与之比较,找出前半部分的最公平的裁判,再将之与后半部分的进行比较,得出最终的最公平的裁判。为了方便管理员更好的使用界面操作,我还设置了每输入完一组数据并得到结果后,或接着输入下组数据或按0跳出界面。 整个程序的设计思路到此结束。 第三部分:程序功能划分、图示及流程图 【功能模块划分及其流程图】 本程序功能模块根据程序设计的需求,综合程序的实用性、人性化、智能化的考虑,将程序划分为6个部分分别编写,程序主体功能将由这6个部分来完成。这6个部分依次是: 1.分数的输入部分; 2.对分数进行的排序部分; 3.计算平均值的部分; 4.找出最不公平裁判部分; 5.找出最公平裁判部分; 6.数据的输出部分 总体设计: 系统功能模块图 程序流程 系统的执行应从功能菜单的选择开始,依据用户的选择来进行后续的处理,直到用户选择退出系统为止,其间应对用户的选择做出判断及异常处理。系统的流程图如下:

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

2020/3/27 淮阴工学院 数据结构课程设计报告 选题名称: 学生成绩管理系统 系(院): 数理学院 专业:信息与计算科学 班级: 计科1102班 姓名: 徐连喜学号: 33 指导教师: 周海岩 学年学期: 2011 ~ 2012 学年第 1 学期 2012 年 06 月 06 日 1 2020/3/27 【摘要】 21世纪,科学技术突飞猛进,经济知识和信息产业初见端倪,特别是信息技术和网络技术的讯速发展和广泛应用,对社会的政治,经济,军事,文化等领域产生越来越深刻。学生成绩管理系统是一个教育单位不可缺少的部分,它的内容对

于学校的决策者和管理者来说都至关重要。本论文叙述到的学生成绩管理系统是用IIS+ASP网页编程+ACCESS数据库+DREAMWEAVER MX 2004+SQL查询语言实现的。重点介绍了学生成绩管理系统的实现过程:包括系统分析,系统调查,功能设计,数据库设计,系统实现,系统测试和调试等。本系统主要功能有查询学生成绩、单个添加学生成绩、批量添加学生成绩、删除学生成绩、管理页面和修改管理员密码等内容。 【关键词】 成绩管理;成绩查询; C++ 2 2020/3/27 目录 中文摘要。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 1。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。1绪论。。。。。。。。。。。 4。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 5选题背景。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 6需求分析2总体设计。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 7。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 8程序设计组成框图。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。9模块功能说明。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。10程序流程图。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 11主要函数之间相互调用3 在设计过程中的感受。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。12 致谢。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 13参考文献 14。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。附录:源程序清单。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 15

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

任务书

摘要 管理信息系统正在向着网络化、智能化和集成化等趋势发展。学生成绩管理系统是为了更好的管理学生考试成绩而开发的数据管理软件。它对于一个学校是不可缺少的重要部分,它的内容对于学校的决策者和管理者来说都至关重要。学生成绩管理管理系统为用户提供充足的信息和快捷的查询手段,实现学生基本信息、成绩的录入,删除,查询,维护以及成绩的统计分析等几方面的功能,是现实问题的迫切要求。 本系统开发的总体任务是实现学生成绩管理的系统化、规范化、自动化。达到提高学生成绩管理效率的目的。与传统管理方法相比有明显的优点:查找方便,可靠性高,保密性好,成本低。彻底改变了以前繁杂的管理模式,实现全面的、相对集中的、职能化的信息综合管理。 计算机被用到信息管理系统的环境正是适应了当今时代飞速发展的信息时代。人们深刻的认识到了计算机功能的强大,对于复杂的信息管理,计算机充分发挥着它的优越性。检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低,这些优点极大地减轻了学院教学人员的工作量,缩小开支,提高了学生档案管理的效率和准确性,能够合理的安排时间,学生能够尽快的知道自己的考试成绩。同时,学生管理系统的应用也为今天的教育在未来市场的竞争力有所提高。

目录 1.引言 数据结构在界至今没有标准的定义。个人根据各自的理解的不同而有不同的表述方法: 在他的《数据结构、算法与应用》一书中称:“数据结构是,以及存在于该对象的和组成实例的数据元素之间的各种联系。这些联系可以通过定义相关的来给出。”他将数据对象()定义为“一个数据对象是实例或值的集合”。在《》一书中的定义是:“数据结构是()的物理实现。” 在《数据结构与程序设计》一书中,将一个数据结构的设计过程分成抽象层、数据结构层和实现层。其中,抽象层是指抽象数据类型层,它讨论数据的及其运算,数据结构层和实现层讨论一个数据结构的表示和在计算机内的存储细节以及运算的实现。数据结构具体指同一类数据元素中,各元素之间的相互关系,包括三个组成成分,数据的逻辑结构,数据的存储结构和数据运算结构。 1.1. 重要意义 一般认为,一个数据结构是由数据元素依据某种逻辑联系组织起来的。对数

学生成绩信息管理系统

学生成绩信息管理系统 学生成绩信息管理系统 1 引言............................................................................................................... 1 1.1 设计目的与要求 ................................................................................... 1 1.2设计内容 .................................................................................................. 12系统需求与功能分析 .................................................................................... 1 2.1 系统需求分析........................................................................................ 2 2.2系统功能分析......................................................................................... 23总体结构设计 .................................................................................................. 3 3.1系统的结构设计 .................................................................................... 3 3.2系统管理流程图 .................................................................................... 3 4 系统详细设计和系统实现.......................................................................... 4 5 系统测试 ..................................................................................................... 10 6 结束语.......................................................................................................... 15参考文献.......................................................................................................... 15附录1:链表结构化设计源程序清单.................................................... 16附录2:顺序表结构化设计源程序清单............... ... . (26)

c语言设计歌星大奖赛

c语言设计歌星大奖赛 2 C 学院: 环境学院 专业: 生物科学 班级: 043101 学号: 20101000179 姓名: 段勇 目录 第一部分:课程设计编号、名称、内容 .. 第二部分:程序总体设计思路 .......... 第三部分:程序功能划分、图示及流程图 第四部分:程序设计数据、运行结果 .... 第五部分:源程序 ....................

第六部分:总 结 ..................................................................... ............................. 第一部分:课程设计编号、名称、内容编号:二十一题 名称:歌星大奖赛 内容: 【要求】 (1) 在歌星大奖赛中,有十个评委为参赛的选手打分,分数为1~100分。选手 最后得分为:去掉一个最高分和一个最低分后其余8个分数的平均植。请 编写一个程序实现。 (2) 同时对评委评分进行裁判,即在10个评委中找出最公平(即评分最接近 平均分)和最不公平(即与平均分的差距最大)的评委。 【提示】 一、需求分析 这个问题的第一个要求算法十分简单,但是要注意在程序中判断最大、最小值的变量是如何赋值的。第二个要求为了考虑效率,要用到排序技术。 第二部分:程序总体设计思路 由于C语言是面对过程的语言,故我的设计思路是根据目标程序运行的过程来编写的。 王老师给我安排的是21题的《歌星大奖赛》,在编写本程序的过程中,首先我借助购买的指导材料,了解了一些目标程序运行的次序与界面的操作方法,然后按照题目的具体要求进行思考和设计。 因为老师抽签给我的程序比较简单,再加上前期实习时王老师交给的一些C的思路和方法,我很快便将整个程序的设计思路整理清楚。具体的设计思路如下:

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

辽宁工业大学 数据库原理与应用课程设计(论文)题目:东北大学学生成绩管理系统 院(系):软件学院 专业班级:软件技术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 课程设计要求 按课程设计指导书提供的课题,应根据下一节给出的基本需求独立完成八个方面的

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

相关主题
文本预览
相关文档 最新文档