当前位置:文档之家› C语言课程设计

C语言课程设计

C语言课程设计
C语言课程设计

C语言课程设计

一.实训要求:

1、进一步掌握和利用C语言进行程设计的能力。

2、进一步理解和运用结构化程设计的思想和方法。

3、初步掌握开发一个小型实用系统的基本方法。

4、学会调试一个较长程序的基本方法。

5、学会利用流程图或N-S图表示算法。

6、掌握书写程设计开发文档的能力(书写实习报告)。

二.实训内容:

通过复习C语言所学习内容,完成如下编程任务,要求每个题目都画出流程图或者是N-S图,并写出解决此问题的实训报告(即详细的解题过程、分析过程和实训心得),并附最终得到的完整的c语言代码。

1、实现学生成绩管理系统:(也可以选择类似的学籍管理系统)

系统要求如下

a、当前学生信息:通过结构体struct student 来保存学生的姓名,学号,性别,语文,数学,英语和计算机等等相关信息,并且通过cin函数来进行给当前学生输入初始信息.

b、学生成绩查询: 输入一个学号, 在文件中查找此学生, 若找到则输出此学生的全部信息和成绩; 若找不到则输出查找失败的信息.

c、新生插入:按照该生的学号,将此生的信息保存进文件。

d、可以把各科的平均成绩,最高和最低分分别全部输出。

e、输出全部学生信息和全部学生成绩。

f、退出系统。

2、计算器。

编写一个计算器程序,实现加、减、乘、除、求平方根(正数)、求平方数等功

能。

①要求根据用户从键盘输入的表达式:

操作数1 运算符op 操作数2

计算表达式的值,指定的算术运算符为加(+)、减(-)、乘(*)、除(/)等。

②要求程序能进行浮点数的算术运算。

③程序要求可以连续做多次算术运算,每次运算结束后,程序都给出提示:

Do you want to continue(Y/N or y/n)?

用户输入Y或y时,程序继续进行其他算术运算;否则程序退出运行状态。三、实训评分标准

实训成绩由三部分构成:实训考勤分数(30%),实训态度分数(20%),实训报告分数(50%)。

实训时间为一周,分上下午分别签到,每次到课可得到3分,共30分,到课不满60%的学生没有实训成绩;实训时玩游戏,看视频及其他与实训无关的动作,将在实训态度分中分别扣除相应的分数。

四、实训具体安排

时间安排

6.17(周一)上午复习所学过C语言知识

6.17(周一)下午

完成实验一

--6.19(周三)

6.20(周四)完成实验二

6.21(周五)撰写实训报告并提交实训报告和源代码

C语言课程设计题目

C语言课程设计 题目1:学生成绩统计管理 1、输入一个班级的学生的基本信息(包括学号,姓名,性别,5门课程成绩)。 2、按姓名或者学号查找、修改、删除和保存各个学生的信息。 3、计算每个学生各门功课总分和平均分,按学号或总分排序输出每个学生 的基本信息及总分、平均分和名次。 4、计算全班各门功课的平均分,显示每门课程中低于平均分的每一个学生 的学号,姓名,性别,科目,成绩。 5、显示每门科目中,成绩在90分以上的学生信息,以及每门科目中不及格 的学生信息。 6、用菜单进行管理 7、只有正确输入用户名密码才能使用此系统。 8、所有内容能够保存到文件中。下次进入系统是从文件中读取原有信息。 题目2:物业费管理系统 1、新住户信息的添加。(户主姓名、性别、身份证号、联系电话、楼号、 单元号、房号、平米数、每平米物业价格、应缴纳物业费,备注信息) 2、修改住户信息的功能。 3、删除住户信息的功能。 4、应缴物业费自动生成。每月1号,自动生成本月份的物业费。如果该住 户之前的物业费未交清,则本月物业费与之前拖欠费用进行累加,为该 用户应缴纳的物业费。 5、缴费功能。根据用户缴纳金额,修改“应缴纳物业费”。 6、统计功能。 1)能够按楼号分类统计所有未交清物业费的记录。 2)能够按拖欠款项多少,对所有用户信息进行从大到小排序。 7、用菜单进行管理 8、只有正确输入用户名密码才能使用此系统。 9、所有内容能够保存到文件中。下次进入系统是从文件中读取原有信息。 题目3:会员卡计费系统 设计一个会员卡计费管理系统。 1、新会员登记。(将会员个人信息及此会员的会员卡信息进行录入。) 2、会员信息修改。 3、会员续费。(会员出示会员卡后,管理人员根据卡号查找到该会员的信 息并显示。此时可以进行续费,续费后,提示成功,并显示更新后的信 息。) 4、会员消费结算。(会员出示会员卡后,管理人员根据卡号查找到该会员 的信息,结算本次费用。提示成功,并显示更新后的信息。)累计消费 满1000元,及自动升级为VIP会员。之后每次消费给予9折优惠。 5、会员退卡。(收回会员卡,并将余额退还,删除该会员信息。) 6、会员卡挂失。(为该会员补办新卡,并将旧卡余额转至新卡。) 7、用菜单进行管理 8、统计功能。

C语言课程设计总结

C语言课程设计总结 一、设计题目: 猜数字和贪吃蛇小游戏。 专业:09电气工程及其自动化 组号:第十组 组员:马邢(组长)、王维、毛亮、汪小成、魏坤波、陈维康、高裴石、石峰、葛良志、冯鑫源 指导教师:黄莉莉 二、任务分配: 我们组分为两队,一对制作贪吃蛇游戏,另一对制作猜数字游戏。制作贪吃蛇的人员是马邢,葛良志,高裴石,石峰,陈维康。石峰和高裴石负责收集程序材料,马邢和葛良志负责整理和编写程序,陈维康辅助我们工作。制作猜数字的是魏坤波,王维,毛亮,汪小成,冯鑫源。魏坤波和王维负责编写程序,其他三人收集材料并帮助他们人编写和调试程序。 三、心得体会: 课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,当今计算机应用在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握计算机开发技术是十分重要的。 回顾起此次课程设计,至今让我我们仍感慨颇多,的确,从从拿到题目到完成整个编程,从理论到实践,几个星期的日子里,可以学

到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识,也懂得集体团队的重要性。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说结构体……通过这次课程设计之后,一定把以前所学过的知识重新温故。 这次课程设计终于顺利完成了,在设计中遇到了很多编程问题,最后在黄老师的辛勤指导下,终于游逆而解。同时,在黄老师的身上我学得到很多实用的知识,在次我表示感谢!同时,对给过我帮助的所有同学和各位指导老师再次表示忠心的感谢

c语言课程设计成绩记录簿

合肥学院 计算机科学与技术系 课程设计报告 2012~2013学年第二学期 课程面向过程综合设计 课程设计名称C语言成绩簿 学生姓名 学号 专业班级 指导教师 2013年6月

第一章需求分析 1.1 任务要求: 编制一个C语言成绩记录簿,每个学生信息包括:学号、姓名、C语言成绩。具体功能:(1)创建信息链表并以磁盘文件保存; (2)读取磁盘文件并显示输出所有学生的成绩; (3)按学号或姓名查询成绩; (4)添加成绩记录; (5)修改指定姓名或学号的学生的成绩并可存盘; (6)显示输出60分以下、60~79、80~89、90分以上各分数段的学生信息(可选项)。 1.2任务问题: 如何运用我们已学的c语言知识完成要求?如何制作相应界面?switch的应用该如何实现?如何完成相应的数组或链表的实现与应用?怎样进行相应的文件的读写? 1.3任务的解决步骤: 步骤: 1.建立一个主界面。 2.用switch语句进行分类讨论。 3.分别进入录入,查询,修改,学生分数段统计等子函数。 4.将子函数与主函数相连即可。

第二章算法设计 1、设计思想 2.1 程序结构(流程图)

2.2 重要的数据结构

2.3主要算法思想(文字描述) 本程序是非数值计算型算法设计,我设计出了通讯录管理系统的基本功能,并设计了简单的界面。本程序主要考察对自定义函数的熟悉程度,本程序主要使用的是链表的相关操作,包括结构体链表的创建、输入、输出、查找、修改等。我设计的这个通讯录系统也初步实现了人员信息的显示、修改、查找、等必要的功能,并通过子函数与主函数相连来完成相应的功能。 2.设计表示 int Student_Insert( ); (添加学生成绩) void edit( ); (修改) void Student_Search( );(查找) void WriteFile( ); (写入文件) void ReadFile( ); (读取文件) void Student_Select( );(分数段选择) void PrintMark( );(打印学生分数) void NameChange( );(按姓名修改) void NumberChange( );(按学号修改) 3.实现注释 除了没有用链表进行实验的缺点外,基本可以实现任务要求,界面简洁,程序简单,易操作。 4.算法设计中一些新的想法: 本程序主要包含了结构体与动态变量的相关知识; 其中也多次用到了循环和判断结构; 本程序还可以通过子函数实现删除,排序等操作。用链表,指针也可以实现相应的任务要求。

C语言程序设计课程设计题目

1一元稀疏多项式的运算 问题描述:设有两个带头指针的单链表表示两个一元稀疏多项式A、B,实现两个一元稀疏多项式的处理。 实现要求: ⑴输入并建立多项式; ⑵输出多项式,输出形式为整数序列:n,c1,e1,c2,e2……c n,e n,其中n 是多项式的项数,c i,e i分别为第i项的系数和指数。序列按指数降序排列; ⑶多项式A和B相加,建立多项式A+B,输出相加的多项式; ⑷多项式A和B相减,建立多项式A-B,输出相减的多项式; ⑸多项式A和B相乘,建立多项式A×B,输出相乘的多项式; ⑹设计一个菜单,至少具有上述操作要求的基本功能。 测试数据: (1) (2x+5x8-3.1x11)+(7-5x8+11x9) (2) (6x-3-x+4.4x2-1.2x9)-(-6x-3+5.4x2+7.8x15) (3)(x+x2+x3)+0 (4)(x+x3)-(-x-x-3) 2成绩排序 假设某年级有4个班,每班有45名同学。本学期有5门课程考试,每门课程成绩是百分制。假定每个同学的成绩记录包含:学号、姓名各门课程的成绩共7项,其中学号是一个10位的字符串,每个学生都有唯一的学号,并且这4个班的成绩分别放在4个数组中,完成以下操作要求: ⑴编写一个成绩生成函数,使用随机数方法,利用随机函数生成学生的各门课程的成绩(每门课程的成绩都是0∽100之间的整数),通过调用该函数生成全部学生的成绩; ⑵编写一个平均成绩计算函数,计算每个同学的平均成绩并保存在成绩数组中; ⑶用冒泡排序法对4个班的成绩按每个同学的平均成绩的以非递增方式进

行班内排序; ⑷用选择排序法对4个班的成绩按每个同学的平均成绩的以非递增方式进行班内排序; ⑸对已按平均成绩排好序的4个班的同学的构造一个所有按平均成绩的以非递增方式排列的新的单链表; ⑹设计一个菜单,至少具有上述操作要求的基本功能。 3迷宫问题 问题描述:以一个m×n的长方阵表示迷宫,0和1分别表示迷宫中的通路和障碍。设计一个程序,对任意设定的迷宫,求出一条从入口到出口的通路,或得出没有通路的结论。 实现要求: ⑴实现一个以链表作存储结构的栈类型,然后编写一个求解迷宫的非递归程序。求得的通路以三元组(i,j,d)的形式输出,其中:(i,j)指示迷宫中的一个坐标,d表示走到下一坐标的方向。 ⑵编写递归形式的算法,求得迷宫中所有可能的通路; ⑶以方阵形式输出迷宫及其通路。 [测试数据] 迷宫的测试数据如下:左上角(1,1)为入口,右下角(8,9)为出口。 1 2 3 4 5 6 7 8 实现提示:

大一C语言课程设计题目

课 程 设 计 任 务 书 信息工程与自动化 学院 计算机科学与技术 专业 2011 年级 学生姓名: 课程设计题目: 程序设计语言课程设计 课程设计主要内容: 一、 基础程序设计: 本设计部分主要完成与链表操作相关的基本运算,其中包含:链表的建立、链表的输出、链表的插入、链表的删除等运算。. 二、 综合程序设计: 该部分主要是培养学生在程序编写方面综合能力的训练,学生选作其中的一至二题程序的编写与实施。 1、设计统计任意文本字数的程序(张力老师组必做): 要求包括:中英文文本的:中文字数、数字数目、英文字符数、英文单词数及其他符号。 2、车票订购统计系统(张力老师组必做): 下图是昆明——北京的沿途车站与票价: 请用C 语言为之开发一个售票程序,要求如下: (1)乘客购票时用菜单选择起点站和终到站。如果选择的起点站和终到站为同一个站则报错,程序退出。 (2)选好起点站和终到站之后,通过调用函数int BuyTicket() 为之计算票价和里程,并在屏幕上显示出来。 (3)用文件类型存储每一次售票记录,包括:售票流水号,起点站,终点站,里程,金额等数据,并统计所有存储记录的总售票金额及各站的旅客流量(进站流量+出站流量)。 3、万年历的设计: 要求: 模仿现实生活中的挂历,能够显示年历、月历、日历,并具备退出功能。 当前页以系统当前日期的月份为准显示当前月的每一天(显示出日及对应的星期几)。 当系统日期变到下一月时,系统自动翻页到下一月。 4、通讯录管理系统:

制作一个通讯录程序,该程序具有查找、添加、修改、删除功能。通讯录包括:姓名,电话,街道,城市,省,邮编等。 模块设计参考: 第一个模块——主函数main()的功能是:根据选单的选项调用各函数,并完成相应的功能。 第二个模块——Menu()的功能是:显示英文提示选单。 第三个模块——Quit()的功能是:退出选单。 第四个模块——Create()的功能是:创建新的通讯录。 第五个模块——Add()的功能是:在通讯录的末尾,写入新的信息,并返回选单。 第六个模块——Find()的功能是:查询某人的信息,如果找到了,则显示该人的信息,如果未找到,则提示通讯录中没有此人的信息,并返回选单。 第七个模块——Alter()的功能是:修改某人的信息,如果未找到要修改的人,则提示通讯录中没有此人的信息,并返回选单。 第八个模块——Delete()的功能是:删除某人的信息,如果未找到要删除的人,则提示通讯录中没有此人的信息,并返回选单。 第九个模块——List()的功能是:显示通讯录中的所有记录。 设计指导教师(签字): 教学基层组织负责人(签字): 年月日

c语言课程设计报告

C语言程序设计B 课程设计报告 设计题目:学生成绩管理系统年级班级: 学号: 姓名: 指导教师: 2020 年 6 月 18 日

目录 一、设计目的 (3) 二、课程设计内容和要求 (4) 三、总体设计 (5) 四、主要步骤 (12) 五、功能实现 (13) 六、功能测试 (64) 七、评价程序 (83) 八、课程设计体会 (84)

一、设计目的 程序设计能力是当代理工类大学生的必备能力,当学生学习了C语言之后,编程能力远远不能达到开发实际应用程序的要求,特备是对其中的指针、结构体、链表和文件部分的理解和应用都比较弱。 程序设计的目的是通过对面向过程的学习,将C语言的主要知识点进行综合,针对提高学生C语言程序设计能力,强化编写较大的应用软件能力,熟练运用已掌握的知识解决实际需要解决的问题,以达到更加熟知指针、链表、结构体、文件读取、标准库的使用。 主要目的为以下几点: 1、熟练掌握面向过程(结构化)程序设计基本知识; 2、综合运用所学知识解决实际问题; 3、受到面向过程(结构化)程序设计的基本训练; 4、体会面向过程(结构化)开发程序的过程。

二、课程设计内容和要求 1.课程设计内容: 学生通过使用C语言进行编写算法,开发学生成绩管理系统,以实现对学生成绩的管理。 2.课程设计要求 1)具有菜单,可以在菜单上进行选择; 2)能实现学生数据录入、修改、删除、查询; 3)能实现数据排序; 4)有数据输出功能; 5)有数据读取与存储功能; 6)一个学生的数据(称为:每条记录)包含姓名、学号、语文、数 学、英语、总分、名次等信息; 7)以结构方式存储每条记录; 8)多条记录以链表方式存储到内存; 9)随时可将全部数据存储到磁盘文件中,方便下次从磁盘读取数据。

C语言课程设计报告范例

学院C语言课程设计报告 课程名称: C语言课程设计课程编号: 报告题目 学生姓名学号 专业任课教师 成绩评阅日期

C语言课程设计报告 一、 C语言课程设计的目的 C语言的教学是学生根据课堂讲授内容,学生做相应的自主练习,消化课堂所讲解的内容;通过调试典型例题或习题积累调试C程序的经验;通过完成辅导教材中的编程题,逐渐培养学生的编程能力、用计算机解决实际问题的能力。具体来说: 1.进一步掌握和利用C语言进行程设计的能力; 2、进一步理解和运用结构化程设计的思想和方法; 3、初步掌握开发一个小型实用系统的基本方法; 4、学会调试一个较长程序的基本方法; 5、学会利用流程图或N-S图表示算法; 6、掌握书写程设计开发文档的能力(书写课程设计报告); 二、课程设计报告正文 (1)课程设计题目的原文; 假定民航机场共有n个航班:航班号、起始站、终点站、飞机号、飞机时间、乘员定额、余票量。试设计一民航订票系统,使之能提供下列服务: 航班信息录入功能(文件保存) 完成航班信息浏览功能; 查询航线(至少一种查询方式)。 (2)题目的分析(需求分析); 任务:通过此系统可以实现如下功能: 录入:可以录入航班情况(数据可以存储在一个数据文件中) 浏览:航班信息浏览功能需要提供显示操作; 查询:可提供按照航班号、起点站、终点站、飞行时间、查询,可以查询某个航线的情况(如,输入航班号,起飞抵达城市,确定航班是否满仓);另外 要提供键盘式选择菜单以实现功能选择。 要求:根据以上功能说明,设计航班信息,订票信息的存储结构,设计程序完成功能。

可以建立航班结构体,结构体成员包括航班号、起点站、终点站、飞行时间、 预售票总数、已售票数。 (3)整体设计与模块划分; 根据需求分析,该程序可分为以下四大模块: (4)代码设计; 包括——各功能模块的流程图;重要模块中关键部分的代码分析;关键函数的算法设计和分析;等等; A.主函数 (1)分析:主函数的功能比较简单,形式比较简洁,主要功能为:在系统中没有程序所要的文件时,为程序建立一个所许的文件;调用菜单函数。程序中的各模块都要用到同一个文件,如果该文件不存在,则该程序就无法正常运行,增加第一个功能就是保证文件的可用切可打开!本来只要在主函数里调用各功能模块就行了,但是为了让程序能够方便的回到主函数里,所以就建立了一个菜单函数。 菜单函数的功能是替主函数调用个功能模块函数,因而设计的基本思路很简单,即:用一个输入来接受用户的选择,加以个循环来让输入错误的用户继续输入,直到输入正确为止;用一个switch语句来选择用户所要用到的函数。 (2)程序: void menu() { int n,w; do {

C语言程序设计课程设计报告

C语言程序设计课程设 计报告 内部编号:(YUUT-TBBY-MMUT-URRUY-UOOY-DBUYI-0128)

《C语言程序设计》课程设计报告 (2013— 2014学年第 3 学期) 题目: C语言课程设计 专业:软件工程 班级:软件工程技术2班 姓名学号: 1 林燕萍 指导教师:吴芸 成绩: 计算机科学与技术系 2014 年6月23日

目录 一、课程设计的目的与要求 (1) 二、方案实现与调试 (3) 2.1 掷骰子游戏 (5) 2.2 射击游戏 (7) 2.3 计算存款本息之和 (8) 2.4肇事逃逸 (10) 2.5 礼炮 (12) 2.6 汽车加油 (14) 2.7 大优惠 (16) 2.8 金币 (19) 三、课程设计分析与总结 (23) 附录程序清单 (25) 一、课程设计的目的与要求(含设计指标) C语言是一种编程灵活,特色鲜明的程序设计语言。C语言除了基知识,如概念,方法和语法规则之外更重要的是进行实训,以提高学习者的动手和编程能力,从应试课程转变为实践工具。这是学习语言的最终目的。结合多年来的教学经验,根据学生的学习情况,为配合教学过程,使“项目教学法”能在本质上促使学生有更大进步,特编写了该《C 语言程序设计任务书》,以在实训过程中给学生提供帮助。达到如下目的: 1.在课程结束之前,让学生进一步了解C程序设计语言的编程功能;

2.让学生扎实掌握C程序设计语言的相关知识; 3.通过一些有实际意义的程序设计,使学生体会到学以致用,并能将程序设计的知识与专业知识有效地结合,更全面系统地了解行业知识。 编写程序要求遵循如下基本要求: ①模块化程序设计 ②锯齿型书写格式 ③必须上机调试通过 二、方案实现与调试 2.1掷骰子游戏 2.1.1 题目内容的描述 1) 两人轮流掷骰子,每次掷两个,每人最多掷10次。 2) 将每人每次的分值累加计分 3) 当两个骰子点数都为6时,计8分;当两个点数相等且不为两个6时,计7分;当两个点数不一样时,计其中点数较小的骰子的点数。4) 结束条件:当双方都掷10次或经过5次后一方累计分数多出另一方的30%及以上。最后显示双方分数并判定优胜者。 2.1.2输入数据类型、格式和内容限制和输出数据的说明 数据类型:整型;内容限制:随机数的产生;输入数据结果:胜利的一方 2.1.3主要模块的算法描述

C语言课程设计大作业

郑州大学 课程报告 课程名称:C语言程序设计 专业班级:(15)班 学生姓名:谢* 学号: *** 任课教师:赵** 学期: 2012-2013-2 课程报告任务书

成绩评定教师:一. 需求分析

1,具有数据的插入、修改、删除、显示和查询功能的电话簿管理程序。 2,数据包括:人名、工作单位、电话号码和E-MAIL地址。 3,可对记录中的姓名和电话号码进行修改。 4,可增加和删除记录。 5,可显示所有的保存记录。 6,可按人名或电话号码进行查询。 分析 建议采用结构体数组和文件系统实现。结构体成员包括人名、工作单位、电话号码和E-MAIL地址。 根据题目的要求程序应该采用结构体数组和文件系统实现。应该有文件的操作功能;在程序中应该包括输入、显示、删除、查询、添加、修改、保存、加载和退出的功能。 二、概要设计 (1).程序的模块组成及各个函数的功能: 程序的模块组成: 主函数:main(); 输出数据函数:printf(); 读取数据函数:scanf(); 显示记录函数:Display(); 删除记录函数:shanchu(); 查找记录函数:chaxun(); 自定义清屏函数:system(“cls”); 自定义输入函数:input(); 字符输入函数:getchar(); 修改数据函数:xiugai(); 保存数据函数:baocun(); 排序数据函数:paixu(); 各函数的主要功能: 输出数据函数:随时输出数据; 读取数据函数:读取输入的数据信息;

显示菜单函数:显示可供选择的主菜单; 显示记录函数:显示通讯录所有输入的信息; 删除记录函数:显示要删除的通讯录所有输入的信息; 查找记录函数:显示要查询的通讯录所有输入的信息; 自定义清屏函数:清除前面运行留下的信息; 自定义输入函数:输入通讯录的成员;; 字符输入函数:从终端输入一个字符,遇回车键返回; 修改数据函数:修改通讯录的成员信息; 保存数据函数:保存通讯录的成员信息; 排序数据函数:排序通讯录的成员信息; (2)程序中的抽象数据类型的定义: 用户的状态结构 用户 { 编号: 姓名: 电话; 年龄; 邮箱: 地址; (3)总体流程图 根据上面的分析,可以将程序系统的设计分为如下几个模块:插入、显示、删除、查询、修改、保存和退出。 } 三. 详细设计

c语言课程设计体会

体会 通过这次C语言的课程设计,我明白了很多也知道了很多,更收获了很多。在课程设计的过程中出现过困难, 三周的课程设计已经结束了。回想学习C语言的过程中,既有快乐又有烦恼, 回顾这次课程设计,至今我仍感慨颇多,的确,自从拿到题目到完成整个编程,从理论到实践,在整整一个星期的日子里,可以学到很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论和知识是远远不够的,只有把所学的理论知识与实际相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考能力。在设计的过程中遇到的问题,这毕竟独立做的,难免会遇到各种各样的问题,同时在设计的过程中发现自己的不足之处,对以前所学的知识理解得不够深刻,掌握得不够牢固,比如说结构体……通过这次课程设计之后,一定把以前所学过的知识从新温故。这次课设终于顺利完成了,在设计中遇到了很多编程问题 做完这个课程设计,我们的自信一下子提高了,我们也会写程序了;尽管对于有些人这种程序会很简单,可对于我们C语言初学者来说,已经很不容易了。这次体验为以后的学习计算机的我们增强了信心。享受劳动成果的滋味实在美妙啊! 很感谢这次的课程设计,它使我更加地体会到多看专业书的重要性,只有掌握了一定量的专业知识才能得心应手地解决诸多问题;另外,在做任何事倒要有耐心,不要一遇到困难就退缩;在学习和工作中要时刻谨记“团结”二字,它好比通向成功的铺路石,不可或缺。 人生的道路是曲折的,但正是因为曲折人生才光彩夺目,在人生的道路上,总遇到重重困难,但正是因为困难我们才变得更坚强。今后的路还很长,面对困难,让我们用行动去俘虏它吧!

C语言课程设计报告电子生词库软件

程序设计基础实训任务书 题目:电子生词库软件 学生姓名:学号:班级: 题目类型:软件工程(R)指导教师: 一、设计目的 1.进一步掌握和利用C语言进行程序设计的能力; 2.进一步理解和运用结构化程序设计的思想和方法; 3.初步掌握开发一个小型实用系统的基本方法; 4.学会调试一个较长程序的基本方法; 5.学会利用流程图或N-S图表示算法; 6.掌握书写实训开发文档的能力(书写实训报告); 二、设计任务及内容 根据需要,建立属于自己的生词库,这样使用起来很方便。生词选自本人经常需要的单词,对于英文单词,给出中文含义,对于中文单词给出英文含义。功能要求: (1)创建生词库。用文件建立一个单词库,中英文单词均有,对于英文单词,给出中文含义,对于中文单词给出英文含义。 (2)显示词库。显示所有单词和单词数、所有中文单词和单词数、所有英文单词和单词数,显示英文单词时按字母从小到大顺序排列。

(3)编辑词库。首先确认密码后允许添加新词、删除旧词和修改旧词。 (4)查找生词。显示所要查找的单词其及含义 主菜单和子菜单能够循环出现,每一项菜单执行之后,询问用户是否继续进行。从子菜单可以返回主菜单。 三、设计要求 1.用C语言实现系统; 2.系统具有统计、查询、排序等基本功能; 3.系统的各个功能模块要求用函数的形式实现; 4.文档:实训说明书每个学生一份,并装在统一的资料盒中; 5.光盘:每个学生文档和程序资料分别建在一个以自己学号和姓名命名的文件夹下,并要求每班负责人汇总每个学生的文件放在以班级姓名命名的文件夹下,刻录成一张光盘,放在一个专门的资料袋中。 四、提交的成果 1. 设计任务书一份(学校统一格式) 2. 设计说明书一份,内容包括: 1) 中文摘要100字,关键词3-5个。 2) 实训题目、内容、要求。 3)总体设计(包含几大功能模块)。 4)详细设计(各功能模块的具体实现算法——流程图) 5)数据结构设计描述,各模块(函数)的功能介绍,参数说明等。

C语言程序设计课程设计

《C语言程序设计》课程设计 1课程设计目的 C语言课程设计是在“C语言程序设计”课程后集中安排的1周相关的实践技能训练环节。它的目的是通过实践环节的训练,培养学生查阅资料的能力、分析与解决问题的能力、应用C语言开发与设计程序的能力。 2课程设计选题 2.1 题目1 必做题目,其余题目任选一题完成 题目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:学生学籍管理系统(可以2人合作完成) 用数据文件存放学生的学籍,可对学生学籍进行注册,登录,修改,删除,查找,统计,学籍变化等操作。 功能要求: (1)系统以菜单方式工作。 (2)登记学生的学号,姓名,性别,年龄,籍贯,系别,专业,班级;修改已知学号的学生信息; (3)删除已知学号的学生信息; (4)查找已知学号的学生信息; (5)按学号,专业输出学生籍贯表。 (6)查询学生学籍变化,比如入学,转专业,退学,降级,休学,毕业。 题目4:通讯录程序设计 设计一个实用的小型通讯录程序,具有添加,查询和删除功能。由姓名,籍贯,电话号码1,电话号码2,电子邮箱组成,姓名可以由字符和数字混合编码。电话号码可由字符和数字组成。实现功能:(1)系统以菜单方式工作 (2)信息录入功能 (3)信息浏览功能

2018c语言课程设计题目

C语言课程设计题目 一、实训要求 1)C语言课程设计要求 1.可自己选定一题目,限1人选的题目只能由1人单独完成,如限3人选的题目可由1-3人 完成。 2.模块化程序设计 3.锯齿型书写格式 4.必须上机调试通过 2)课程设计报告内容要求: 1.课程设计题目 2.总体设计(程序设计组成框图、流程图) 3.详细设计(模块功能说明(如函数功能、入口及出口参数说明,函数调用关系描述等) 4.调试与测试:调试方法,测试结果的分析与讨论,测试过程中遇到的主要问题及采取的解 决措施 5.源程序清单和执行结果:清单中应有足够的注释 6.具体格式另附说明。 3)检查要求: 1.每个人必须有程序运行结果; 2.每个人必须交《课程设计报告》打印稿---—注:各班班长将本班学生的课程设计报告电 子版用优盘拷贝(标上学号、姓名、班级)上交。 4)打分标准: 1.根据平时上机考勤;注重平时上机成绩,教师要不定期检查学生进度,学生不得以自己有 私人电脑为借口而不来上机。 2.根据程序运行结果; 3.根据《C语言课程设计报告》,学生能对自己的程序面对教师提问并能熟练地解释清楚 以上三项缺一不可,否则不能到得相应学分 二、课程设计题目: 1:职工信息管理系统设计(限最多3人完成) 职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。试设计一职工信息管理系统,使之能提供以下功能: 系统以菜单方式工作 职工信息录入功能(职工信息可用文件保存)--输入 职工信息浏览功能--输出 查询和排序功能:(至少一种查询方式) --算法

按工资查询 按学历查询等 职工信息删除、修改功能(任选项) 2:图书信息管理系统设计(限最多3人完成) 图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等。试设计一图书信息管理系统,使之能提供以下功能: 系统以菜单方式工作 图书信息录入功能(图书信息用文件保存)--输入 图书信息浏览功能--输出 查询和排序功能:(至少一种查询方式)--算法 按书名查询 按作者名查询 图书信息的删除与修改(可选项) 3:学生信息管理系统设计(限最多3人完成) 学生信息包括:学号,姓名,年龄,性别,出生年月,地址,电话,E-mail等。试设计一学生信息管理系统,使之能提供以下功能: 系统以菜单方式工作 学生信息录入功能(学生信息用文件保存)---输入 学生信息浏览功能---输出 查询、排序功能---算法 按学号查询 按姓名查询 学生信息的删除与修改(可选项) 4:学生选修课程系统设计(限最多3人完成)

C语言课程设计题目汇总

目录 题目6:通讯录程序设计(限2人)........................................................................................................................................... 题目10:机房机位预定系统(限2人)..................................................................................................................................... 题目13:工资纳税系统............................................................................................................................................................. 题目41:条件编译.....................................................................................................................................................................

题目6:回文数的形成............................................................................................................................................................... 杨顺民题目 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”

c语言课程设计_菜单设计

C语言课程设计_菜单设计 调试环境为TC2.0或者3.0。运行这个程序需要tc提供的几个头文件。建议修改options菜单中的include 目录项到tc的include的目录下(具体方法可以参见本书第一章的讲解);或者把源程序拷贝到tc目录下运行。 #include #include #include #include #include /*定义一些常数*/ #define NO 0 #define YES 1 #define NONE -1 #define MAX_MENU 7/*根据情况改变可以在菜单显示的最大项*/ /*全局参数*/ int X,Y; int Selection; int button,x,y; void *p; size_t area; /*菜单结构*/ struct MENU { /*左上角*/ int x; int y; /*右下角*/ int x1; int y1; unsigned char Active[MAX_MENU];/* 菜单项是否激活的标志*/ char *head;/* 菜单的名字(可选项)*/ }; int MouseOn(struct MENU *t); void Process(); void Xorbar(int sx,int sy,int ex,int ey,int c); void Show(); void Hide(); void Status(); /* 通过下面的参数用户可以改变按钮的位置。*/ struct MENU File={200,110,250,130}; struct MENU Edit={295,110,345,130}; struct MENU Help={390,110,440,130}; struct MENU Close={600,10,620,30}; struct MENU Neeraj={380,300,460,315}; void main() { int gd = DETECT,gm;

c语言课程设计报告书

课程设计报告书 所属课程:c语言 项目:库函数模拟系统 指导老师:邹姝稚 班级:软件1401 姓名:江闯 学号:141403107 分数:

1.任务描述: 本系统开发的代码模拟了下列库函数的功能: (1).模拟gets和puts的功能:能接收一个字符串,将其写入ASCII文件,并且可以读出显示。 (2).在不使用字符串库函数的条件下,编程实现字符串的拷贝,连接,求长,倒置功能。 (3).字符串加密功能:将一段明文建立到一个ASCII文件中,按加密的算法加密后写入密文文件,最终实现将明文和密文文件都显示出来。 (4).编程实现字符串与对应数字的相互转换功能。 2.总体设计: 模块调用图: 图1

函数调用图: 图2 函数功能: (1)函数gp( ):模拟gets和puts的功能 (2)函数kaobei( ):实现字符串的拷贝 (3)函数lianjie( ):实现字符串的连接 (4)函数qiuchang( ):实现字符串的求长 (5)函数daozhi( ):实现字符串的倒置 (6)函数jiami( ):实现字符串的加密功能,最后将明文和密文文件都显示出来 (7)函数zhuanhuan1( ):将数字字符串转换为对应的数字 (8)函数zhuanhuan2( ):将数字转换为对应的数字字符串 3.详细设计: (1).模仿gets和puts功能: gets和puts功能与scanf和printf函数的功能相似,但是也不是完全相同,本系统模拟功能的程序总共运用了两次函数调用技术,模拟gets运用了一次,模拟puts运用了一次。 (2)..字符串的拷贝功能: 字符串的拷贝功能程序设计源于strcpy的功能,其中运用了字符串数组和指针的相关技术,还运用了一组while语句,实现语句的循环,从而将一个字符串拷贝到一个空数组中。

C语言课程设计图书管理系统课程设计报告

C语言课程设计 图书管理系统 Books Management System 学生姓名张朝柱 学院名称徐州工程学院学号140 班级13计转本 专业名称计算机科学与技术 指导教师李子龙 2016年5月10日

一、需求分析 为了满足图书管理的要求,通过计算机技术给图书管理人员和读者借、还书带来便利。使用c语言编写了图书管理系统。本系统主要实现图书信息管理的功能,通过此系统可对图书馆库存图书信息进行管理和维护操作。实现了图书馆内管理的一般功能,包括查询、借书、还书、添加、删除、修改图书信息等。所设计的系统以菜单方式工作,为用户提供清晰的使用提示,依据用户的选择来进行各种处理,并且在此过程中能够尽可能的兼容用户使用过程中可能出现的异常情况。图书信息包括编号、书名、作者、数量、在库状态等。图书信息的录入和显示要求有一定的规范格式,录入的图书信息用文件形式保存,并可以对其进行浏览、查询、借阅、还书等基本操作。整个程序实现顺序表操作,对图书信息的操作逐个地进行,一个图书信息的更改不应影响其他的图书记录。 二、算法设计: 1.设计思想: 整个系统制造的而过程中,涉及了较多C语言知识点,对于不同的数据类型、程序控制结构、数据结构作以分析和总结,并结合这个课题进行综合的应用,在一定程度上做到了对所学知识融会贯通。进一步加深、巩固了所学的专业的基本理论知识,培养了综合分析问题、解决问题的能力。在设计程序时,实现了程序的模块化、结构化。在主函数中调用各种子函数,操作界面简单,易操作。 2,设计表示: (1)、整个系统除了主函数外,另外还有各种功能子函数,利用无限次循环语句while()和选择语句swithch()实现各个子函数的调用,系统根据输入的数字选项来调用相应的函数,以实现相应的功能。主要实现了图书的录入、存储、查询、借书、还书、显示库存等功能。 (2)、void Book_Entering(struct SqList &SL);这是一个录入图书信息的函数,它主要实现了顺序表的创建,并且在创建过程中从文件读取信息到顺序表中,以用于后面其他函数的操作。它引用了一个顺序表SL。其他函数调用时只需传入顺序表头即可。 (3)、int main(void);这五个函数时整个图书管理系统的全部菜单函数,Book_Entering();为系统主界面,进入时可选择进入程序和退出程序。menu1();为进入程序时显示的功能菜单,在此菜单可以选择录入、保存图书信息,也可选择进入其他子系统。Book_Inquire();此菜单为进入图书管理系统的菜单,在此可以选择添加、删除、修改图书等操作。cxmenu();为查询系统的菜单,在此可以选择按书名、编号、作者等方式进行查询图书。jhmenu();为借书还书的子菜单,在此可以选择借书还书操作。操作完成后按提示信息进行文件的保存操作。 (4)、void Book_Inquire(struct SqList &SL);这个函数为顺序表的输出函数,把顺序表的头传给函数后,可输出整个顺序表的所有信息。、

C语言程序课程设计猜数字游戏

C语言程序设计课程设计 : 自 动 化 级 : 名: 学号: 指导教师: 兰州交通大学自动化与电气工程学院 2015年07月21日

一.引言 设计目的 复习和巩固C语言基础知识,进一步加深对C语言的理解和掌握。提高同学将课本上的理论知识和实际结合的能力,锻炼同学的分析解决实际问题的能力,提高同学团队合作的能力。使同学们善于观察和思考,善于合作,具备实践编程的基础素质,和实际问题分析的思考方式。 设计要求 在设计时充分地分析和理解问题本身,综合考虑系统功能,怎样使系统结构清晰、合理、简单和易于调试。然后详细设计,确定每个过程和函数的简单功能,以及过程(或函数)之间的调用关系。最后认真完成课程设计说明书,并对设计方法,结果等进行总结。 充分地分析和理解问题本身,弄清要求做什么(What to do)。在确定解决方案框架过程中(How to do),综合考虑系统功能,考虑怎样使系统结构清晰、合理、简单和易于调试。最后确定每个过程和函数的简单功能,以及过程(或函数)之间的调用关系。 确定算法的主要流程,在此基础上进行代码设计(Coding),每个明确的功能模块程序一般不超过60行,否则要进一步划分。 上机前程序静态检查可有效提高调试效率,减少上机调试程序时的无谓错误。静态检查主要有两种途径:(1)用一组测试数据手工执行程序;(2)通过阅读或给别人讲解自己的程序而深入全面地理解程序逻辑。 二.基础题 题目 用选择法对10个数进行排序。 有一个已排好序的数组。现输入一个数,要求按原来的规律插入到原数组中。解题思路 程序的主要功能是对数组元素用排序函数按从小到大的顺序进行排序。 先定义一个10个元素的一维数组a[10],然后从电脑输入10个数(也就是对数组赋值),然后使用一次fun()函数,对这10个数进行排序;然后再定义一个11个元素的一维数组b[11],同时再从电脑输入一个数同a[10]一起赋值给b[11],然后再使用fun()函数,重新排序的到最后的有顺序的一组数据。 流程图 子函数流程图如图1所示:

C语言课程设计参考题目 (1)

C语言课程设计参考设计题目 1、学生信息管理 (1)问题描述 学生信息包括:学号,姓名,年龄,性别,出生年月,地址,电话,E-mail等。试设计一学生信息管理系统,使之能提供以下功能: ●系统以菜单方式工作 ●学生信息录入功能(学生信息用文件保存)---输入 ●学生信息浏览功能——输出 ●查询、排序功能——算法 1、按学号查询 2、按姓名查询 ●学生信息的删除与修改(可选项) (2)功能要求 ●界面简单明了; ●有一定的容错能力,比如输入的成绩不在0~100之间,就提示不合法,要求重新 输入; ●最好用链表的方式实现。 (3)算法分析 首先,一个学生包括这么多的属性,应该考虑定义一个结构,其次,我们应该考虑数据的存储形式:是定义一个数组来存储,还是定义一个链表呢?在这里假如我们以数组的方式来存储,当然可以,但是我们知道,假如我们定义一个数组的话,我们首先必须知道学生人数大概是多少,以便我们确定数组的大小,但是题目中没有给出,而且题目要求中有大量的删除、插入操作,所以用链表的方式比较方便。 对于菜单的实现,其实也比较简单,首先我们用printf语句把程序的功能列出来,然后等待用户输入而执行不同的函数,执行完了一个功能后又回到菜单。文件的读写操作大家参照书中的有关文件的章节。 2、学生综合测评系统 每个学生的信息为:学号、姓名、性别、家庭住址、联系电话、语文、数学、外语三门单科成绩、考试平均成绩、考试名次、同学互评分、品德成绩、任课教师评分、综合测评总分、综合测评名次。考试平均成绩、同学互评分、品德成绩、任课教师评分分别占综合测评总分的60%,10%,10%,20%。 A、学生信息处理 (1) 输入学生信息、学号、姓名、性别、家庭住址、联系电话,按学号以小到大的顺序存入文件中。 提示:学生信息可先输入到数组中,排序后可写到文件中。 (2) 插入(修改)同学信息: 提示:先输入将插入的同学信息,然后再打开源文件并建立新文件,把源文件和输入的信息合并到新文件中(保持按学号有序)若存在该同学则将新记录内容替换源内容, (3) 删除同学信息: 提示:输入将删除同学号,读出该同学信息,要求对此进行确认,以决定是否删除将删

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