C语言课程设计校园卡管理系统
湖南涉外经济学院课程设计报告
课程名称: C语言课程设计
报告题目:校园卡管理系统
学生姓名:万智亮
所在学院:信息科学与工程学院
专业班级:电信1202班
学生学号: 12430621817069 指导教师:彭琼王晓秋
20 13 年6月21日
C语言程序设计课程设计任务书
摘要
校园卡管理系统(以下简称:卡管系统)是应用于校园卡管系统和应用的软件,该软件在程序设计中有它不可取代的地位,该软件是以C语言为实现语言,其功能在系统内部有源代码直接完成,管理者只需输入一些简单的汉字、数字,即可达到自己管理用户的目标。
学校校园卡管理系统以菜单方式工作,密码登陆。其中有校园卡信息的录入功能(增加数据),校园卡信息的删除(删除数据),校园卡信息的浏览功能(查找数据),校园卡信息的修改(修改数据),校园卡信息的排序的6种功能。校园卡信息的录入采用结构体存放校园卡信息,也可采用多维数组存放;而校园卡信息的删除是任意输入一本校园卡的编号,可以将它所有的校园卡删除;同时校园卡信息的浏览功能可以任意输入一张校园卡的卡号,显示出所有相关数据,能多次查找。
校园卡信息需要修改时,任意输入校园卡的卡号,显示出所有相关信息后,给出提示菜单,可选择对某一项信息进行修改并保存;最后就是校园卡信息的排序。可以将所有校园卡的信息按余额从低到高依次显示出来。
关键词:添加、删除、查找、修改、排序
目录
一、概述 (1)
二、需求分析 (2)
三、系统设计 (3)
四、添加模块详细设计与实现 (4)
五、结论与心得 (6)
六、参考文献 (6)
一、概述
选择这个课题主要是了解校园卡管理系统的内涵,综合学期所学的知识来编译一个系统,了解C语言的作用以及重要性,从中来学好这门语言,巩固这一学期来所学到的知识。
本课题有四人组成的课题小组,【组长:万智亮(1、2、4);组员:王红阳(6)、董浩(3)、姚江宁(5)】组员对设计、个模块编程、撰写文档、测试等任务有明确的分工,并在项目开始时有和合理的进度计划。各自对应自己所做的步骤如上小括号标示具体内容下:
1、系统以菜单方式工作,密码登陆。
2、校园卡信息的录入功能(增加数据)。用数组数据类型赋初值的方法把校园卡信息(包括卡号,姓名,学生所在学院、余额等)送到各个数组中(但注意要是合法数据),然后把它们输出显示。
3、校园卡信息的删除(删除数据)。任意输入校园卡的编号,将它所有的信息从数组中删除。
4、校园卡信息的浏览功能(查找数据)。任意输入一张卡的编号,打印出所有相关数据。要求能多次查找。
5、校园卡信息的修改(修改数据)。任意输入一张卡的编号,打印出所有相关信息后,可对卡的信息进行修改并保存。
6、校园卡余额的计算并排序。统计所有校园卡的余额,将包括所有数据的数组元素按价格从高到低的顺序排序打印出来。
7、(选做)校园卡的充值和消费。通过界面可对校园卡金额进行充值或消费,消费时要先检查剩余金额是否足够。
二、需求分析
1.添加学生信息卡号
添加数据:根据主函数,在声明函数之后,调用用函数void zjsj来实现此操作,对已经注册的登录用户有自己的个人卡号系统的录入功能。
2.删除旧卡
删除数据;任意输入校园卡的编号,将它所有的信息从数组中删除,调用函数void scsj来进行操作,登录用户拥有自己校园卡管理的查询功能,可以按条件查询和模糊查询。
3.修改校园卡
修改数据:任意输入一张卡的编号,打印出所有相关信息后,可对卡;的信息进行修改并保存,调用void xgsj函数来实现此操作。
4.查询校园卡
查找数据:任意输入一张卡的编号,打印出所有相关数据。要求能多次查找。查找数据)。任意输入一张卡的编号,打印出所有相关数据。要求能多次查找。可调用void czsj函数进行操作。
5.排序校园卡
排序模块:统计所有校园卡的余额,将包括所有数据的数组元素按价格从高到低的顺序排序打印出来。可调用void jspx函数来实现此功能。
三、系统设计
校园卡管理系统分为:(登陆界面→添加新卡→删除数据→查找数据→查找数据→计算并排序)
2.总流程图
3.技术路线
数据结构形式:结构体+二叉排序树。以用户为节点建立二叉排序树,以玩家为节点,以结构体形式接在用户节点之后。功能:查找(按照卡号、姓名)、插入添加学生信息(按卡号)、删除、排序、查看、修改、查找、密码登录、初始化;
四、详细设计
【校园卡管理系统】我负责的是以上所画流程图这三个方面,在做之前可谓是不知如何动手,但是光坐到那里不做事却更加浪费时间,所以自己下了一个决心,没有绝对的事物是自己会做的,自有自己用心去做你才会懂得怎样去做,怎样去思考,怎样去分析。程序详细分析:
#include
#include
#include
#include
#include
struct car /*校园卡的数据类型*/
{
int num;//定义变量
char name[10];
char class1[10];//字符变量
int money;
};
struct car card[100]; /*定义学生信息的结构体类型*/ void main()//函数体
{
void dljm();//声明“登陆界面”函数
void mima();//声明“密码”函数
void zjsj();//声明“添加数据”函数
void scsj();//声明“删除数据”函数
void czsj();//声明“查找数据”函数
void xgsj();//声明“修改数据”函数
void jspx();//声明“计算排序”函数
mima();//调用“密码”函数
dljm();//调用“登陆界面”函数
//scsj();
}
int u,t;
//void main ()
//{
//}
注释1:以上程序代码为函数头文件以及函数声明部分。
void mima()
{
char a[7],b[]={"533159"};
int i,j;
for (j=1;j<=3;j++)
{printf("\t\t请输入密码:");
for (i=0;i<6;i++)
{
a[i]=getch();
if(a[i]==8) {i=i-2;printf("\b \b");
}
else
{
if (a[i]==13)break;
printf("*");
}
}
a[i]='\0';
printf("\n");
if (strcmp(a,b)==0)//比较两个字符串的大小,两个字符串相同时返回0.
{
printf("密码正确\n");break;}
else
printf("\t\t输入密码错误!请重新输入:\n");
}
}
本程序代码功能是设置校园卡管理系统的登陆界面,” 533159为登陆密码。定义一个整型变量i,用一个for循环来控制密码登陆次数,次数为三次,密码和账号只要其中有一个出错则屏幕显示请再次输入,若输入次数错误超过三次则会显示校园卡管理系统登陆失败。输入正确则显示登陆成功,进入系统主菜单界面。
void dljm()
{
char i;//“定义一个全局变量”
printf("\n\n");
M:
system("cls");//按任意键继续。
printf("\n\n");
printf("\t\t◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆\n");
printf("\t\t************************************************\n");
printf("\t\t*******※欢迎进入校园卡管理系统功能界面※*******\n");
printf("\t\t************************************************\n");
printf("\t\t◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆\n");
printf("\n\n\n\n");
//mima();
printf("\t\t\t→←→←→←→←→←→←→←→←→←→\n");
printf("\t\t\t←→←→A 校园卡信息添加系统←→←→\n");
printf("\t\t\t→←→←→←→←→←→←→←→←→←→\n");
printf("\t\t\t←→←→B 校园卡信息删除系统←→←→\n");
printf("\t\t\t→←→←→←→←→←→←→←→←→←→\n");
printf("\t\t\t←→←→C 校园卡信息查找系统←→←→\n");
printf("\t\t\t→←→←→←→←→←→←→←→←→←→\n");
printf("\t\t\t←→←→D 校园卡信息修改系统←→←→\n");
printf("\t\t\t→←→←→←→←→←→←→←→←→←→\n");
printf("\t\t\t←→←→E 校园卡信息求值系统←→←→\n");
printf("\t\t\t→←→←→←→←→←→←→←→←→←→\n");
printf("\n\n\n");
printf("\t\t请输入所需功能的对应字母\n");
i=getchar();
switch(i)//开关控制语句
{
case 'A':zjsj();goto M;break; //“利用case语句进行选择所要执行的内容,break语句进行跳转。
case 'B':scsj();goto M;break;
case 'C':czsj();goto M;break;
case 'D':xgsj();goto M;break;
case 'E':jspx();goto M;break;
}
}
void zjsj()//“添加系统”定义键入学生信息函数。
{
int j,k;//“定义局步变量“
char a;
printf("\t\t\t^◎^-^◇^-^◆^-^◎^-^◇^-^◆^-^◎^\n");
printf("\t\t\t****************************************\n");
printf("\t\t\t******* ㈠校园卡信息添加系统㈠ *******\n");
printf("\t\t\t****************************************\n");
printf("\t\t\t^◎^-^◇^-^◆^-^◎^-^◇^-^◆^-^◎^\n"); printf("\n\n\n");
printf("\t\t请输入新的信息\n");
printf("\n");
l:
printf("卡号");
scanf("%d",&card[u].num); /*输入卡号*/
for (j=0;j
{
if((card[u].num==card[j].num))
{
printf("\t\t卡号重复,请重新输入.\n");
scanf("%d",&card[u].num);
}
}
printf("姓名");
scanf("%s",&card[u].name); /*输入姓名*/
printf("班级");
scanf("%s",card[u].class1); /*输入班级*/
printf("金额");
fflush(stdin);
scanf("%d",&card[u].money); /*输入金额*/
u++;
printf("\t\t是否继续输入信息,继续(Y),退出(n)\n");
getchar();
a=getchar();
if (a=='y'||a=='Y') goto l;
else
printf("\n\n");
printf("\t\t卡号姓名班级金额 \n");
for (j=0;j
{
printf("\t\t%d\t",card[j].num);
printf("%s\t",card[j].name);
printf("%s\t",card[j].class1);
printf("%d\t",card[j].money);
printf("\n");
}
printf("\n");
printf("\t\t\t按1键退出\n");
scanf("%d",&k);
getchar();//读取下一个字符
}
void czsj()//“查找系统”
{
int i,y;
char a;
printf("\t\t\t^◎^-^◇^-^◆^-^◎^-^◇^-^◆^-^◎^\n"); printf("\t\t\t****************************************\n"); printf("\t\t\t******* ㈡校园卡信息查找系统㈡ *******\n"); printf("\t\t\t****************************************\n"); printf("\t\t\t^◎^-^◇^-^◆^-^◎^-^◇^-^◆^-^◎^\n"); printf("\n\n\n");
R:
printf("\t\t\t请输入要查询的卡号信息:");
scanf("%d",&y);
printf("\t\t卡号姓名班级金额 \n");
for (i=0;i
if(y==card[i].num)
{
printf("\t\t%d\t",card[i].num);
printf("%s\t",card[i].name);
printf("%s\t",card[i].class1);
printf("%d\t",card[i].money);
printf("\n");
}
printf("\n");
printf("\t\t是否继续输入信息,继续(Y),退出(n)\n");
getchar();
a=getchar();
if (a=='y'||a=='Y') goto R;//“条件语句,判断是否继续,”“gotoR返回到界面”。
else
printf("\n\n");
printf("\t\t卡号姓名班级金额 \n");
for (i=0;i
{
printf("\t\t%d\t",card[i].num);
printf("%s\t",card[i].name);
printf("%s\t",card[i].class1);
printf("%d\t",card[i].money);
printf("\n");
}
printf("\n");
printf("\t\t\t按1键退出\n");
scanf("%d",&y);
getchar();
}
五、结论与心得
课程设计对我们来说是一次大考验,将以前学习的知识加以巩固。自己动手,发现问题和解决问题,其中发现了自己很多地方的不足,平时没有掌握的知识在实践中暴漏,在设计之前可谓不知如何动手,但是经过不断的思考,查阅书籍和上网查资料及上机运行,解决了一些问题,却还存在很多问题,是寻求老师的帮助得以解决。
C语言在我们这个专业当中是一个重点学科,只有学好C语言知识,你才会在今后的专业深造学习起来得心应手,反过来说,如果自己没学好,多少会影响
到你专业的扩展,在老师的帮助下,我也询问了老师,让我知道C语言的及其作用,它会应用到我们以后专业深造的后台程序编写,所以这一次的课程设计使我懂的了很多,以前不知道C语言到底对我们有什么用处,但是这次的考验真的让我体会到了C语言的重要性,也让我对学C语言的兴趣得以提升,我相信在今后的学习中,一定能把它解决好。当今计算机应用在生活中可以说的无处不在,因此作为二十一世纪的大学来说掌握程序开发技术是十分重要地,而C语言又是最常见,功能最强大的一种高级语言,因此做好C语言课程设计是十分必要的。
这次的课程设计我不仅巩固《C语言程序设计》课程学习的内容,掌握设计的基本方法,强化上机动手能力,还进一步掌握以下知识:数据类型、分支控制、循环控制、函数的定义及调用、结构体及数组等一些知识。
当我选择校园卡管理系统时,首先系统分析主要思路及框架,与同学讨论,联系所学知识,尽管一些文件要同组帮助找,也还有一些循环语句要具体分析,了解其运行路线,尤其是for,while,if等的使用,这次的课程设计应用起来特别多,所以很多通过老师的讲解让我懂得了很多,但这还是一小部分,想要学好C语言这些远远是不够的,这还是一点皮毛而已,所以以后C语言的学习,要更加用功,更加努力,这样你才能够熟练掌握C语言技巧,国家二级的考试通过才能得心应手,这次的课程设计也让我得到了许多经验,以后的学习,还是要多编写一些程序,这样有利于快捷、更好的掌握C语言的学习,因为只有加强动手能力才是以后深造的关键,所以动手能力实为重要。
第一次课程设计虽说能够运行通过,都是功能不过完善,所以继续修改,一遍一遍,最后还是不懂的只能需求老师的帮助了,慢慢努力,总算勉强通过,忙碌了一个星期,在大家的共同努力下,我们总算将程序设计出来了。因为在设计过程中,让我了解到了要设计一个大程序,查找资料是至关重要的,在他人的基础上,在根据自己所学进行修改与调试,最后设计出自己想要的程序,这过程艰辛,都是重要你持之以恒,成功指日可待。另外平时扎实的基础也很关键,因为如果你平时学的不怎么样,那么你面对一个比较有难度的程序,你可能会望而止步,看他人的程序都是个难点,更别说让你自己去设计。为了解决此类问题,最好就是多问同学,多向老师请教,不要怕难为情。所以我想这也是我的忧点,因为我不怕难为情,有困难实在解决不了,我就去寻求老师来帮助我解决,因为老师,凭他们多年的编写程序的经验,要解决我们的问题,只是小意思。
团队精神不可少,分工合作也是必须的,所以只有经过小组一起讨论之后在进行分工,这是尤为重要地。
通过这次课程设计使我们懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,
才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。
在课程设计过程中,收获知识,提高能力的同时,我也学到了很多人生哲理,懂得怎么样去制定计划,怎么样去实现这个计划,并掌握了在执行过程中怎么样克服心理上的不良情绪,如果遇到一点点困难就选择逃避,这样永远是学不会的,所以只有持之以恒,坚持下去,这才硬道理。因此在以后的生活和学习过程中,我一定会把课程设计的精神带到生活中,使生活更加美好。
六、参考文献
[1]谭浩强.C程序设计(第三版)[M].北京:清华大学出版社,2005
[2]谭浩强.C程序设计题解与上机指导(第三版).北京:清华大学出版社,2005
[3] Herbert Schildt.C语言大全(第四版).北京:电子工业出版社, 2004
[4]Samuel P.Harbison Ⅲ,Guy L.Steele.C语言参考手册(第5版).北京:机械工业出版社,2003
c语言课程设计机房机位预定系统绝对正确,附源代码
1 设计目的 机房机位预定系统 2 任务概述 20台机器,编号1到20,从早八点到晚八点。两小时一个时间段,每次可预定一个时间段。功能要求: (1)系统以菜单方式工作 (2)查询,根据输入时间,输出机位信息。 (3)机位预定,根据输入的时间查询是否有空机位,若有则预约,若无则提供最近的时间段,另:若用户在非空时间上机,则将用户信息列入等待列表。 (4)退出预定,根据输入的时间,机器号撤销该事件的预定! (5)查询是否有等待信息,若有则提供最优解决方案(等待时间尽量短),若无则显示提示信息。 ......... 3 模块划分 4 主要函数说明及其N-S图 1.主函数: int main() { Menu(); /*当前状态函数*/ } void Menu() /*主界面*/ { int n,w; do { puts("\t\t****************机房机位预约系统*******************\n"); puts("\t\t*************************菜单
***************************\n"); puts("\t\t\t 1.查询某时间段机位状态"); /*查询某时间段机位状态*/ puts("\t\t\t 2.预定空机位"); /*预定空机位*/ puts("\t\t\t 3.取消预订"); /*取消预订*/ puts("\t\t\t 4.查询等待信息"); /*查询等待信息*/ puts("\t\t\t 5.退出"); /*退出*/ puts("\t\t********************************************************\n"); printf("选择菜单号(1-5):"); scanf("%d",&n); if(n<1||n>5) {w=1;getchar();} else w=0; }while(w==1); switch(n) { case 1:Situation();break; case 2:Book();break; case 3:Cancel();break; case 4:SearchWaiting();break; case 5:exit(0);break; } getch(); } 2.机位查询: void Situation() { int time; printf("输在 (8-20)范围内的时间:"); scanf("%d",&time); if(time<8||time>20) {printf("\t时间输入错误!\n"); printf("输入在 (8-20)范围内的时间:"); scanf("%d",&time); } detail(time); /*函数调用*/ getchar(); Menu();} 3.机位预定:
C语言课程设计报告——贪吃蛇源程序
C 语言课程设计(小游戏贪吃蛇的程序设计报告) 设计人: 班级: 201 年月号
目录一:概述 1:研究背景及意义 2:设计的任务与需要知识点3:具体完成设计内容 二:需求分析 1:功能需求 2:操作方法 三:总体设计 1:模块划分 2:数据结构设计 四:详细设计 1:主空摸块设计 2:绘制游戏界面 3:游戏的具体过程 4:游戏的结束处理 5:显示排行榜信息模块 五:程序的调试与测试1:动画与音乐同步 2:蛇的运行 3:终止程序 六:结论 七::结束语 八:程序清单 九:参考文献
一. 概述 本课程设计以软件工程方法为指导,采用了结构化,模块化的程序设计方法,以C语言技术为基础,使用Turbo C++3、0为主要开发工具,对贪吃蛇游戏进行了需求分析,总体设计,详细设计,最终完成系统的实现与测试。 1、1 研究的背景及意义 随着社会的发展,人们生活的节奏日益加快,越来越多的人加入了全球化的世界。人们不再拘泥与一小块天地,加班,出差成了现代人不可避免的公务。而此时一款可以随时随地娱乐的游戏成为了人们的需要。此次课程设计完成的贪吃蛇小游戏,正就是为了满足上述需求而设计出来的。贪吃蛇游戏虽小,却设计诸多的知识点。通过开发贪吃蛇游戏系统,可使读者初步了解使用软件工程的与那个发,技术与工具开发软件的过程,进一步掌握结构化,模块化的程序设计方法与步骤,进一步掌握总体数据结构设计,模块划分方法,掌握局部变量,全局变量,结构体,共用体,数组,指针,文件等数据结构的使用方法,掌握图形,声音,随机数等多种库函数的使用方法,学习动画,音乐,窗口,菜单,键盘等多项编程技术,进一步学会软件调试,测试,组装等软件测试方法,为后续课程的学习与将来实际软件开发打下坚实的基础。 1、2 设计的任务与需要的知识点 1、2、1 课程设计主要完成的任务 1)、通过编写“贪吃蛇游戏”程序,掌握结构化,模块块化程序设计的思想,培养解决实际问题的能力。 2) 有同步播放动画,声音效果。 3) 设计好数组元素与蛇,食物的对应关系。 4) 随机产生食物。 5) 有分数统计,排行榜,分数存储等功能。 通过此次课程设计,希望使读者能更深入的理解与掌握课程教学中的基本概念,培养读者应用基本技术解决实际问题的能力,从而进一步提高分析问题与解决问题的能力。 1、2、2需要掌握与运用的知识点 1、2、3本次课程设计需要掌握与运用如下的知识点: 1) 数组的应用。 2) 全局变量的使用。 3) 按键处理。 4)结构体的应用。 5)图形,音乐与动画的有关知识。 6)随即函数的使用。 7)文件的基本出操作。 8) 结构化,模块化的设计方法。
C语言课程设计俄罗斯方块源代码
1、新建“.h”头文件,将“头文件” 代码粘贴至其中, 2、新建“.c”源文件,将“源代码” 代码粘贴到其中。 3、新建空白工程,将头文件和源代码 添加进去,调试使用。 //头文件 //1.自定义枚举类型,定义7种形态的游戏方块 typedef enum tetris_shape { ZShape=0, SShape, LineShape, TShape, SquareShape, LShape, MirroredLShape }shape; //2.函数声明 //(1)操作方块函数 int maxX();//取得当前方块的最大x坐标 int minX();//取得当前方块的最小x坐标 void turn_left();//当前方块逆时针旋转90度 void turn_right(); int out_of_table(); void transform(); int leftable(); int rightable(); int downable(); void move_left(); void move_right(); //(2)操作游戏桌面的函数 int add_to_table();
void remove_full(); //(3)控制游戏函数 void new_game(); void run_game(); void next_shape(); int random(int seed); //(4)绘图函数 void paint(); void draw_table(); //(5)其他功能函数 void key_down(WPARAM wParam); void resize(); void initialize(); void finalize(); //(6)回调函数,用来处理Windows消息 LRESULT CALLBACK WndProc (HWND,UINT,WPARAM,LPARAM); //源代码 //1.文件包含 #include
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语言课程设计---学生选课系统加源代码
C程序设计课程设计 题目:学生选课系统专业班级:通信工程1班姓名: 学号: 指导教师: 成绩:
摘要 学生选课系统是一个教育单位不可缺少的重要系统组成部分,它对于学校的决策者、管理者管理、查看课程来说都有至关重要,所以学生选课管理系统应该能够为广大学、师生提供充足的信息和快捷的课程选择过程,有助于学生选好每一门课程,此系统系统选课方便、快捷,用简单的界面来展示学生的选课信息,应用简单明了、存储量大、可靠性高、保密性好、寿命长、成本低等优点,可以极大的提高对学生信息管理的效率。利用C语言开发,实现了简单的学生课程信息的录入、修改、查询、删除等操作,并且能够利用文件系统长久的保留原始数据。
目录 一、需求分析 (1) 二、总体设计 (1) 三、详细设计 (2) 1、数据定义...................................................... 错误!未定义书签。 2、算法流程图 (2) 四、编码 (6) 五、调试 (7) 六、设计总结 (10) 致谢 (11) 参考文献 (12) 附录 (13)
一、需求分析 语言文字描述系统要做什么 数据结构可用结构体,包括课程和选修两个结构体,其中课程结构体成员结构体成员包括课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期。选修结构体成员包括学号,课程编号,该结构体的建立主要是为了查询某门课程学生选修情况。 二、总体设计 系统由哪几个功能模块构成,给出功能模块图。C 中模块化的工具是函数 根据上面的需求分析,可以将这个系统的设计分为如下七大模块: 选课模块、按学分查找模块、按编号查找模块、查看课程模块、查看选课情况模块、课程输入模块、完成选择模块。 菜单选择模块 录入学生信息 学生选课 系统信息查看及储存 退出系统 完成选择模块 学生信息 管 理 录入课程信息 课程 管理
中国地质大学C语言课程设计题目(附参考代码)
C语言课程设计题目 选题一(起评分100分) 高考招生录取程序 已知文本文件f1.txt中存放了某个省当年参加高考的1000个考生的数据(考号、姓名、性别和考试成绩),存放格式是每行存放一个考生的数据,每个数据之间用空格隔开。 假定当年该省的招生计划是:一类本科招生计划为10%;二类本科招生计划为15%;三类本科招生计划为20%;四类高职高专招生计划为25%。 请编写程序,实现以下功能: (1)划定各批次录取分数线,结果可屏幕显示,也可存入文件。 (2)能够统计各批次中男生,女生的录取比例。统计结果可屏幕显示,也可存入文件。 (3)确定每名学生的录取情况及录取批次。 (4)考生可以根据考号或姓名(支持重名)查询自己的成绩及录取情况; 说明: ①系统程序要有界面 ②存入文件的数据,每行存一种数据,每行之间的不同信息用空格分隔。 选题二(起评分85分) 《C语言课程设计与学习指导》第4章题目或第5章题目任选其一 成绩评定方式 平时考勤:20% 考试(即程序考核及检查):40% 实习报告:40% 违规违纪处理 出现以下6种情况中的任何一种,整个课程设计的成绩直接认定为不及格: 1.考勤抽查出现3次(含)不在的情况; 2.上机从事玩游戏、看电影等活动被抓住2次(含)的情况; 3.程序检查被认定为抄袭的情况; 4.实习报告被认定抄袭或雷同的情况; 5.不参加考试(即程序考核及检查)的情况 6.不交实习报告的情况。
C语言课程设计报告撰写要求 1 内容要求 整个报告由六个部分构成: ①课设题目 ②题目分析 ③设计思路 ④实现结果 ⑤课设总结 ⑥附录(源代码) 2 篇幅要求 ①-⑤合计不低于8页,⑥不低于8页。 篇幅没有上限要求,但原则上要求不超过25页。 标题字体字号格式:宋体,三号,加黑,单倍行距。 正文字体字号格式:宋体或Times New Roman,五号,单倍行距。 3 撰写要求 严谨出现抄袭。 严谨出现雷同。 报告出现抄袭或雷同的,整个课程设计成绩一律按不及格论处。 4 其它 封面格式附后。
C语言课程设计――飞机订票系统源代码
#include
void output();//输出格式 void paixu();//航班排序 void chushihua();//系统初始化 void build();//建立数据文件 void paixu1();//按航班号从小到大排序 void paixu2();//从大到小 void main()//主函数{int j; chushihua();//系统初始化判断是否存在原始数据文件 printf("欢迎使用飞机订票系统\n");//打印出系统主界面 do{printf("============================================================= =================== "); printf(" 1.增加航班信息\n" "\t 2.浏览航班信息\n" "\t\t 3.查找航班信息(按航班号)\t\t╮(╯_╰)╭\n" "\t\t\t 4.航班排序(按航班号)\n" "\t\t\t\t 5.订票业务\n" "\to(︶︿︶)o\t\t\t
c语言课程设计报告会员卡计费系统源代码
#i n c l u d e//编译预处理指令,引入头文件 #include
c语言课程设计源代码
c语言课程设计源代码标准化管理处编码[BBX968T-XBB8968-NNJ668-MM9N]
学校运动会管理系统问题描述: (1) 初始化输入:N-参赛院系总数,M-男子竞赛项目数,W-女子竞赛项目数; (2) 各项目名次取法有如下几种: 取前5名:第1名得分 7,第2名得分 5,第3名得分3,第4名得分2,第5名得分 1; (3) 由程序提醒用户填写比赛结果,输入各项目获奖运动员的信息。 (4) 所有信息记录完毕后,用户可以查询各个院系或个人的比赛成绩,生成团体总分报表,查看参赛院系信息、获奖运动员、比赛项目信息等。 程序代码: #include<> #include<> #define N 3 #define M 3 #define W 3 char* n_number[3]={"1","院系2","院系3"}; char* m_number[3]={"1","男项2","男项3"};