C语言课程设计报告模板
《C语言课程设计》报告模板
文华学院
C语言课程设计报告题目:
学生姓名:学号:
学部(系):
专业年级:
指导教师:
2016年3月
(题目)
1. 概述
(对题目要实现的功能做介绍)
2. 设计任务分析
(分析问题,用什么方法解决,关键解法和技术;用什么数据存储方式如数组还是链表等)
3. 系统总框图
(通过画图展示整个程序的功能结构,代码模块划分等,请参见范例)
4. 功能模块描述
(分小点阐述各个代码模块的功能和实现技术,比如主函数,各个子函数的实现方法等)
5. 源程序
(列出完整源程序,用注释方法加以注释)
6. 运行测试及调试
(适当抓3-5图片,演示程序的运行结果或调试过程)
7. 结语
(总结编写代码、调试过程中的经验教训;遇到的错误及解决办法;感想等)。
c语言课程设计报告详细版
c语言课程设计报告详细版一、课程目标知识目标:1. 掌握C语言的基本语法和结构,包括变量声明、数据类型、运算符、表达式和语句。
2. 理解并能运用控制结构,如顺序、选择和循环结构进行程序设计。
3. 学会使用数组、函数和指针进行程序开发,并能理解它们在解决复杂问题中的应用。
4. 熟悉基本的输入输出操作,文件操作以及简单的错误处理机制。
技能目标:1. 能够编写简单的C程序,解决实际问题,展现出逻辑思考和问题解决的能力。
2. 能够阅读和分析C程序代码,理解程序的结构和执行过程。
3. 能够使用调试工具检查和修正程序中的错误,提高程序的稳定性和可靠性。
4. 能够通过小组合作,完成一个综合性的项目,培养团队协作和项目管理的初步技能。
情感态度价值观目标:1. 培养学生对编程的兴趣,激发探究计算机科学的热情,形成主动学习和终身学习的习惯。
2. 培养学生的创新思维和批判性思维,鼓励尝试不同的解决方案,勇于面对编程中的挑战。
3. 增强学生的信息意识和责任感,理解程序在现实生活中的应用和影响,认识到编程对社会发展的贡献。
4. 通过项目实践,培养学生的集体荣誉感,加强沟通能力,形成良好的团队合作精神。
课程性质分析:本课程为高年级的C语言程序设计,旨在通过项目驱动的教学方法,使学生在实践中掌握C语言的编程技能,并能够在日常生活和学习中应用。
学生特点分析:学生具备一定的逻辑思维能力,对计算机编程有一定兴趣,但个体差异较大,需要针对不同层次的学生设计不同难度和类型的教学活动。
教学要求:1. 结合实际案例进行教学,强调理论知识与实践操作的结合。
2. 注重培养学生的实际编程能力和问题解决能力,鼓励学生自主探索和协作学习。
3. 通过形成性评价和总结性评价相结合的方式,全面评估学生的学习成果。
二、教学内容1. C语言基础- 变量与数据类型- 运算符与表达式- 输入输出函数- 顺序结构程序设计2. 控制结构- 选择结构(if-else)- 循环结构(for、while、do-while)3. 函数与数组- 函数定义与调用- 数组的使用- 二维数组4. 指针与字符串- 指针的概念与使用- 指针与数组- 字符串处理函数5. 文件操作与错误处理- 文件的打开与关闭- 文件的读写操作- 简单错误处理6. 综合项目实践- 项目需求分析- 功能模块划分- 编程实现与调试- 项目展示与评价教学内容安排与进度:第一周:C语言基础第二周:控制结构第三周:函数与数组第四周:指针与字符串第五周:文件操作与错误处理第六周至第八周:综合项目实践教材章节关联:《C程序设计》第一章至第五章,涵盖课程教学内容中的所有知识点,为综合项目实践打下基础。
C语言程序设计课程设计报告模板
C语言程序设计课程设计报告题目:设计者:专业班级:学号:指导教师:所属系部:年月日辽东学院信息技术学院学生成绩管理系统说明文档概述本系统主要实现用户登录,显示菜单,学生信息的输入、输出、按学号查询学生信息、按成绩降序排序,把学生信息保存到文件,从文件中导出学生信息等功能。
在输入信息时进行数据的有效性验证。
模块结构图1:登录功能:用户输入口令,如果与系统内保存的密码相一致,则登陆成功;否则重新输入口令,直至输入口令正确才可以登录系统。
(可增加将口令加密后存入文件,登录时读文件机密后判断)2:显示主菜单:用户登录成功,系统显示图形界面,显示系统功能的提示信息。
3:学生信息输入:用户输入要添加的学生的学号、姓名、成绩等信息,系统逐个保存学生信息。
当用户输入学号为0时,输入结束。
输入数据时,来验证数据的输入格式正确,保证学号唯一性4:学生信息输出:将结构体数组中的学生信息输出到屏幕上5:按学号查询学生信息:用户输入要查询学生的学号,系统查询该学号在结构体数组中是否存在,存在则输出该学生的全部信息;否则,输出not found。
6:成绩排序:对结构体数组中的所有学生按成绩有高到低的顺序排序,用冒泡法(或其它排序方法)来实现。
7:导出数据:把结构体数组中的学生信息保存到磁盘文件里8:导入数据:从外部文件中导出学生信息到结构体数组里9:退出:结束程序运行。
系统流程图学生成绩管理系统系统流程图函数声明列表使用说明本系统较为简单,运行系统时要参照系统流程图顺序;1)用户登陆系统,先输入口令,正确,登陆成功;否则,系统等待再次输入口令,直到输入正确才能登陆系统。
2)显示主菜单3)依次选择菜单上的1-7,执行相应的功能,然后重新显示主菜单4)最后选择8,退出系统。
cyuyan课程设计报告模板
cyuyan课程设计报告模板一、教学目标本课程的教学目标是让学生掌握C语言的基本语法、数据结构和算法,培养学生编写简单程序的能力,使学生了解计算机编程的基本思维和方法。
具体来说,知识目标包括:了解C语言的基本语法、数据结构和算法;技能目标包括:能够运用C语言编写简单的程序;情感态度价值观目标包括:培养学生对计算机编程的兴趣和热情,提高学生解决问题的能力。
二、教学内容根据课程目标,本课程的教学内容主要包括C语言的基本语法、数据结构和算法。
教学大纲如下:1.C语言的基本语法:变量、数据类型、运算符、表达式、语句等。
2.数据结构:数组、链表、栈、队列等。
3.算法:排序算法、查找算法、递归算法等。
三、教学方法本课程采用多种教学方法,包括讲授法、讨论法、案例分析法和实验法。
1.讲授法:通过讲解C语言的基本语法、数据结构和算法,使学生掌握相关知识。
2.讨论法:引导学生针对案例进行分析,培养学生的思考和解决问题的能力。
3.案例分析法:分析实际编程案例,使学生更好地理解C语言的应用。
4.实验法:让学生动手编写程序,提高学生的实际编程能力。
四、教学资源本课程的教学资源包括教材、参考书、多媒体资料和实验设备。
1.教材:选用权威、实用的C语言教材,为学生提供系统、全面的学习资料。
2.参考书:推荐一些经典的C语言编程参考书,丰富学生的知识储备。
3.多媒体资料:制作精美的课件、教学视频等,提高学生的学习兴趣。
4.实验设备:提供充足的计算机设备,确保学生能够进行实验和实践。
五、教学评估本课程的评估方式包括平时表现、作业和考试。
平时表现主要评估学生的出勤、课堂参与度和团队合作能力;作业分为编程作业和实践报告,主要评估学生的编程能力和实际操作能力;考试分为期中和期末考试,主要评估学生对C语言基本语法、数据结构和算法的掌握程度。
评估方式客观、公正,能够全面反映学生的学习成果。
六、教学安排本课程的教学安排如下:共计32课时,每周2课时,共16周。
C语言课程设计报告模版
C语言课程设计报告模版Course Design reporter课程名称: C语言课程设计英文名称 : Course Design of C Programming 专业:经济学+软件工程111学号:姓名:指导教师:赵力日期:2020年 7月12日至2020年 7月18 日大连交通大学软件学院《C语言课程设计》报告C Program Experiment Designing课程编号:0120308006学时: 40学时适用专业:软件工程专业授课单位:软件学院一、C语言课程设计目的及要求目的:依照课堂讲授内容,学生做相应的自主练习,消化课堂所讲解的内容;通过调试典型例题或习题积存调试C程序的体会;通过完成辅导教材中的编程题,逐步培养学生的编程能力、用运算机解决实际问题的能力。
要求:1.熟悉Microsoft Visual C++ 6.0 的编程环境、要紧菜单功能。
2.通过上机验证运算符、表达式、运算规则、函数使用。
3.熟练使用C语言的典型语句编写简单程序。
4.调试典型例题或习题。
5.提高上机编程能力二、实验类型设计类型三、实验学时40学时四、实验设备微型运算机、Windows XP操作系统、Microsoft Visual C++ 6.0软件一套五、C语言课程参考教材:[1] 李瑞,徐克圣,刘月凡,戚海英.C程序设计基础(第2版). 清华大学出版社.2011-2[2] 梁旭,谷晓琳,黄明.C语言课程设计(第2版).人民邮电出版社,2009-8课程设计(报告)任务书任务及要求:1.设计(研究)内容和要求研究内容:C语言课程设计题目相关内容5个小程序都分别是什么任务和要求:(1)学习C语言基础知识,把握C语言编程和程序调试的差不多技能。
(2)对指导教师下达的题目进行系统分析。
(3)依照分析结果完成系统设计。
(4)编程:在运算机上实现题目的代码实现。
(5)完成对该系统的测试和调试。
(6)提交课程设计报告。
课程设计报告模板c语言
课程设计报告模板c语言一、课程目标知识目标:1. 理解C语言的基本语法结构,掌握变量定义、数据类型、运算符等基础知识;2. 学会使用控制结构,如顺序结构、分支结构和循环结构;3. 掌握函数定义、声明和调用的方法,理解局部变量和全局变量的概念;4. 了解数组、字符串和指针的使用,并能运用它们解决实际问题。
技能目标:1. 能够运用C语言编写简单的程序,解决问题;2. 培养良好的编程习惯,如规范命名、合理注释、代码缩进等;3. 学会使用编译器进行程序编译、调试和运行;4. 能够阅读和分析简单的C程序代码,提高编程能力。
情感态度价值观目标:1. 培养学生对编程的兴趣,激发学习热情;2. 培养学生的逻辑思维能力,提高问题解决能力;3. 培养学生的团队协作意识,学会与他人分享编程经验;4. 培养学生严谨、细心的学习态度,养成良好的编程习惯。
课程性质:本课程为初中年级的信息技术课程,旨在让学生掌握C语言编程的基本知识和技能。
学生特点:初中学生具有较强的逻辑思维能力和学习兴趣,但对编程知识了解较少。
教学要求:结合学生特点,注重理论与实践相结合,通过实例分析、编程实践等方式,使学生能够掌握C语言的基本知识,提高编程能力。
在教学过程中,关注学生的情感态度,激发学习兴趣,培养良好的编程习惯。
将课程目标分解为具体的学习成果,以便于后续教学设计和评估。
二、教学内容1. C语言基础知识- 变量定义、数据类型和运算符- 输入输出函数的使用- 顺序结构程序设计2. 控制结构- 分支结构(if、if-else、switch)- 循环结构(for、while、do-while)3. 函数- 函数定义、声明和调用- 局部变量和全局变量- 递归函数4. 数组、字符串与指针- 数组的使用和操作- 字符串的基本操作- 指针的概念和用法5. 编程实践- 编写简单程序,解决问题- 分析实例代码,提高编程能力- 调试程序,找出并修复错误教学内容安排与进度:第一周:C语言基础知识,顺序结构程序设计第二周:控制结构(分支、循环)第三周:函数的定义和调用,递归函数第四周:数组、字符串与指针第五周:编程实践与总结教材章节关联:教学内容与教材相应章节紧密关联,确保学生能够在学习过程中系统地掌握C 语言知识。
c语言程序设计实验报告模板
c语言程序设计实验报告模板篇一:C语言程序设计实验报告一、实验目的:1、掌握C语言的数据类型和变量的声明。
2、掌握不同类型数据之间赋值的规律。
3、掌握C语言的运算符和表达式的使用。
4、熟悉C程序的编辑、编译、连接和运行的过程。
二、实验内容:①输人程序:#includevoid main { int a, b; float d,e; char c1,c2; double f, g; long m, n; unsigned int p,q; a=61;b=62; c1='a';c2='b'; d=3.56;e=-6.87; f=3157.890121;g=0.123456789; m=50000;n=-60000; p=32768;q=40000; printf("a=%d,b=%d c1=%c,c2=%c d=%6.2f,e=%6.2f ",a,b,c1,c2,d,e); printf("f=%15.6f,g=%15.6f m=%ld,n=%ld p=%u,q=%u ",f,g,m,n,p,q); } ②运行此程序并分析结果(2)按习题4. 8要求编写程序题目为: 设圆半径r=l. 5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。
用scanf输人数据,输出计算结果口输出时要有文字说明,取小数点后两位数字。
程序:三、实验步骤:①输人程序:#includevoid main { int a, b; float d,e; char c1,c2; double f, g; long m, n;unsigned int p,q; a=61;b=62; c1='a';c2='b'; d=3.56;e=-6.87; f=3157.890121;g=0.123456789; m=50000;n=-60000; p=32768;q=40000; printf("a=%d,b=%d c1=%c,c2=%c d=%6.2f,e=%6.2f ",a,b,c1,c2,d,e); printf("f=%15.6f,g=%15.6f m=%ld,n=%ld p=%u,q=%u ",f,g,m,n,p,q); }②运行此程序并分析结果。
c语言课程设计设计报告
c语言课程设计设计报告c语言课程设计设计报告「篇一」c语言课程设计实验报告第一章基础掌握1.1 实验目的掌握C程序设计编程环境Visual C++,掌握运行一个C程序的基本步骤,包括编辑、编译、链接和运行。
(]1.2 实验要求在报告中记录建立、保存C程序实习过程。
1.3 实验基本内容编写程序,在屏幕上显示一个短句“Hello World”(1)程序:1)编译如下程序:#includeVoid main{printf (“Hello World! ”);}2)链接。
执行Build-命令。
3)运行。
执行Build Execute 命令。
显示结果。
4)关闭程序工作区。
(2)运行结果:输出结果:Hello World!总结:掌握C语言程序设计的基本框架,能够编写简单的程序。
第二章数据类型2.1 实验目的(1)掌握C语言的运算符和表达式的正确使用以及C语言的几种基本数据类型和基本输入输出函数的使用方法。
()(2)通过编程进一步理解和掌握运算符的确切含义和功能。
2.2 实验要求(1)在报告中记录建立、保存C程序实习过程。
(2)完成典型题目,分析遇到的困难和实验中的收获。
2.3 实验基本内容输入程序,观察输出结果 1>./*test2.1c*/1)编译如下程序: #includevoid main{char ch; int k;ch='a',k='b';printf("%d,%x,%c",ch,ch,ch,ch,k); printf("k=%%d ",k) }2)链接。
执行Build-命令。
3)运行。
执行Build Execute 命令。
显示结果。
4)关闭程序工作区。
2>./*test2.2c*/1)编译如下程序: #includevoid main{float a1,a2; double b1,b2; a1=1234.12; a2=0.000001; b1=1234.12; b2=0.000001;printf("%f,%l f ",a1+a2,b1+b2);}2)链接。
c课程设计报告模板
c 课程设计报告模板一、教学目标本课程的教学目标是使学生掌握C语言的基本语法、编程思想和编程方法,培养学生具备运用C语言解决实际问题的能力。
具体目标如下:1.知识目标:(1)了解C语言的发展历程和特点;(2)掌握C语言的基本语法和数据类型;(3)熟悉C语言的运算符、表达式和语句;(4)理解函数的定义和调用;(5)掌握数组、指针和字符串的使用;(6)了解结构体、共用体和枚举类型;(7)掌握文件操作和数据结构。
2.技能目标:(1)能够使用C语言编写简单的程序;(2)具备阅读和理解C语言程序的能力;(3)掌握C语言程序的调试和优化方法;(4)能够运用C语言解决实际问题。
3.情感态度价值观目标:(1)培养学生的编程兴趣,提高学生对计算机科学的热爱;(2)培养学生团队合作精神和自主学习能力;(3)使学生认识到C语言在实际应用中的重要性。
二、教学内容根据课程目标,教学内容主要包括以下几个方面:1.C语言的基本语法和数据类型;2.运算符、表达式和语句;3.函数的定义和调用;4.数组、指针和字符串的使用;5.结构体、共用体和枚举类型;6.文件操作和数据结构;7.实际应用案例。
教学过程中,将按照由浅入深、循序渐进的原则,合理安排教学内容的安排和进度。
三、教学方法为了提高教学效果,将采用以下教学方法:1.讲授法:讲解C语言的基本语法、数据类型、运算符、函数等内容;2.案例分析法:分析实际应用案例,使学生掌握C语言在实际问题中的应用;3.实验法:安排上机实验,让学生动手编写C语言程序,巩固所学知识;4.讨论法:学生进行小组讨论,促进学生之间的交流与合作。
四、教学资源为了支持教学内容和教学方法的实施,将准备以下教学资源:1.教材:《C程序设计语言》(K&R);2.参考书:《C Primer Plus》、《C和指针》;3.多媒体资料:教学PPT、视频教程;4.实验设备:计算机、网络环境。
通过以上教学资源,为学生提供丰富的学习体验,提高教学质量。
C语言课程设计报告范例
XX学院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{puts"\t\tMENU\n\n";puts"\t\t\t\t 1.enter new data";puts"\t\t\t\t 2.Browse all";puts"\t\t\t\t 3.Search";puts"\t\t\t\t 4.exit";puts"\n\n\t\t \n";printf"Choice your number1-4: \b\b";scanf"%d",&n;ifn<1||n>4{w=1;getchar;}else w=0;}whilew==1;switchn{case 1:enter;break;case 2:Browse;break;case 3:Search;break;case 4:exit0;}}/主函数/main{ menu;}B.公共函数1分析:各功能模块中的分程序中的交错的较多,因而,本程序的公共函有5个,这使得各功能模块函数显得简洁,这是程序的一个特点;此处的公共函数的功能较为简单,但他很实用;2程序:1、把航班信息输入到文件中的函数;void inputi{struct flight t;printf"\nflight_no startstation endstation flytime plan_ticket sell_ticket\n";scanf"%d%s%s%s%d%d",&t.flight_no,t.startstation,t.endstation,t.flytime,&t.plan_ticke t,&t.sell_ticket;fp=fopen"flydata.txt","ab";iffp{printf"can not open this file\n";exit0;}else fwrite&t,sizeofstruct flight,1,fp;fclosefp;}2、输出一个航班信息函数void printf_oneflightint i{printf"\n%5d%20s%20s%10s%4d%4d\n",flyi.flight_no,flyi.startstation,flyi.endstation,f lyi.flytime,flyi.plan_ticket,flyi.sell_ticket;}3、输出文件内容结构函数void printf_face{printf"\n\tNO. startstation endstation flytime plan_ticketsell_ticket\n";}4、载入函数实现文件内容载入程序,并返回飞机航班数值;int load{FILE fp;int i;iffp=fopen"flydata.txt","rb"==NULL{printf"\nCan not open file\n";exit0;}fori=0;feoffp;i++fread&flyi,sizeofstruct flight,1,fp;fclosefp;returni-1;}5、返回退出函数实现程序退出、返回;void printf_back{int w;printf"\n\n\tSuccessful.^_^\n\n";printf"What do you want to do\n\n\t1.Browse all now\t2.back:\b\b";scanf"%d",&w;ifw==1 Browse;else menu;}C.航班基本信息输入模块航班信息录入函数:1分析:航班的基本信息,对它们输入后,要存进原文件,采用fwrite函数就可以实现;但是,用该函数存进文件的数据都是以二进制的形式存在的,不是通常所采用的形式,可以改用fprintf函数来实现该功能;不过本程序采用的是fwrite函数;再用户输入完成后,程序会询问是否继续输入,这个功能更具人性化,可以省去返回到主函数在进入这个函数的麻烦流程图输入信息2程序:void enter{int i,n;printf"How many flights do you want input : \b\b";scanf"%d",&n;printf"\n Enter data now\n\n";fori=0;i<n;i++{printf"\n Input %dth float record.\n",i+1;inputi;}printf_back;}D. 航班信息浏览模块流程图显示信息显示航班信息:void Browse{int i,n;n=load;printf_face;fori=0;i<n;i++{ifi%10==0{printf"\nPress any key to contiune ...";getchar;puts"\n\n";}puts"\n\n";printf_oneflighti;}printf"\tThere are %d record.\n",n;printf"\nPress any key to back ...\n";getchar;menu;}E. 航班信息查询模块分析:基本信息的查询按查询可供选择的方式比较丰富,可按航班号查询;在查询小模块中采用了直接查找的方法;本模块可以通过多种查询方式进行完善;这是本程序没有做的地方;流程图程序:void Search{int m,i,flight_no,flag=0;printf"Please input flight_no:\n";scanf"%d",&flight_no;m=load;fori=0;i<m;i++{ifflight_no==flyi.flight_no{flag=1;printf"\nThe flight message is:\n";printf_oneflighti;}}ifflag==1printf"Found";elseprintf"Not Found";printf_back;}5运行与测试报告:在第一步编程过程中很顺利的编写好了各模块,最后整合成了一个完整的程序,但在调试过程中遇到了许多问题;如一些由于粗心导致分号,括号,字母输错的例子很多;但都很快改正;还有函数调用错误fp=fopen"flydata.txt","ab";我在写时丢了fopen结果一直错误,并且发现不了,后来请老师才解决问题;还有写程序中我经常忘记头文件包含命令,以及函数声明,导致调试中出现警告;这让我体会到只有耐心的一行一行的改错误才能把程序调试好;运行中遇到问题:例如,对数据的写文件操作中,我把存在flyN中的数据以fwrite&flyN,sizeofstruct flight,1,fp写入文件,结果发现文件中总是不能出现数据;以至程序不能运行后面部分;后来才发现取得地址错了应改成fwrite&t,sizeofstruct flight,1,fp;在机票显示阶段就是这问题让程序出现错误;不能正确读出输入的飞机航班信息;三、总结程序整体上运行与题目要求很吻合,算法大多比较通用,各个函数模块的正确性、完备性、对输入的容错能力以及算法的进一步改进在设计中都有表述,这道题使我熟悉了文件的输入输出操作,真切的感受到了fprintf和fwrite函数的区别回顾起此次课程设计,至今我仍感慨颇多,从理论到实践,在整整半个月的日子里,我学到很多很多的东西,不仅巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的内容;通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才是真正的知识,才能提高自己的实际动手能力和独立思考的能力;在设计的过程遇到了各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,通过这次课程设计,把以前所学过的知识重新温故,巩固了所学的知识;四、程序代码:include<stdio.h> /头文件包含命令/include<stdlib.h>define N 50struct flight /结构体存放航班信息的结构/{int flight_no;char startstation20;char endstation20;char flytime10;int plan_ticket;int sell_ticket;}flyN;/定义结构体变量/FILE fp;void Browse;void printf_oneflightint i;void menu;void inputi / 把航班信息输入到文件/{struct flight t;printf"\nflight_no startstation endstation flytime plan_ticket sell_ticket\n";scanf"%d%s%s%s%d%d",&t.flight_no,t.startstation,t.endstation,t.flytime,&t.plan_ticket,&t .sell_ticket;fp=fopen"flydata.txt","ab";iffp{printf"can not open this file\n";exit0;}else fwrite&t,sizeofstruct flight,1,fp;fclosefp;}void printf_oneflightint i /输出一个航班信息/{printf"\n%5d%20s%20s%10s%4d%4d\n",flyi.flight_no,flyi.startstation,flyi.endstation,flyi. flytime,flyi.plan_ticket,flyi.sell_ticket;}void printf_face /输出文件内容结构/{printf"\n\tNO. startstation endstation flytime plan_ticket sell_ticket\n"; }int load/载入函数实现文件内容载入程序,并返回飞机航班数值/{FILE fp;int i;iffp=fopen"flydata.txt","rb"==NULL{printf"\nCan not open file\n";exit0;}fori=0;feoffp;i++fread&flyi,sizeofstruct flight,1,fp;fclosefp;returni-1;}void printf_back /返回退出函数实现程序退出、返回/{int w;printf"\n\n\tSuccessful.^_^\n\n";printf"What do you want to do\n\n\t1.Browse all now\t2.back:\b\b";scanf"%d",&w;ifw==1 Browse;else menu;}void enter/航班信息录入/{int i,n;printf"How many flights do you want input : \b\b";scanf"%d",&n;printf"\n Enter data now\n\n";fori=0;i<n;i++{printf"\n Input %dth float record.\n",i+1;inputi;}printf_back;}void Browse{int i,n;n=load;printf_face;fori=0;i<n;i++{ifi%10==0{printf"\nPress any key to contiune ...";getchar;puts"\n\n";}puts"\n\n";printf_oneflighti;printf"\tThere are %d record.\n",n;printf"\nPress any key to back ...\n";getchar; /没有返回植/menu;}void Search/查询/{int m,i,flight_no,flag=0;printf"Please input flight_no:\n";scanf"%d",&flight_no;m=load;fori=0;i<m;i++{ifflight_no==flyi.flight_no{flag=1;printf"\nThe flight message is:\n";printf_oneflighti;}}ifflag==1printf"Found";elseprintf"Not Found";printf_back;}void menu{int n,w;{puts"\t\tMENU\n\n";puts"\t\t\t\t 1.enter new data";puts"\t\t\t\t 2.Browse all";puts"\t\t\t\t 3.Search";puts"\t\t\t\t 4.exit";puts"\n\n\t\t \n";printf"Choice your number1-4: \b\b";scanf"%d",&n;ifn<1||n>4{w=1;getchar;}else w=0;}whilew==1;switchn{case 1:enter;break;case 2:Browse;break;case 3:Search;break;case 4:exit0;}}/主函数/main{menu;/菜单函数的功能是替主函数调用个功能模块函数/}。
C语言程序课程设计报告-正文参考模板
目录1 前言 (1)2 需求分析 (1)2.1要求 (1)2.2任务 (1)2.3运行环境 (1)2.4开发工具 (1)3 概要设计与详细设计 (1)3.1系统流程图 (2)3.2访问流程图 (3)4 编码与实现 (4)4.1分析 (4)4.2具体代码实现 (6)5 课程设计总结 (15)参考文献................................................. (15)致谢 (15)1 前言使用C语言编程,设计一个有效的算法,模拟蚂蚁觅食的过程。
2 需求分析2.1要求(1)各个蚂蚁在没有事先告诉他们食物在什么地方的前提下开始寻找食物。
(2)当一只找到食物以后,它会向环境释放一种信息素,吸引其他的蚂蚁过来,这样越来越多的蚂蚁会找到食物。
(3)有些蚂蚁并没有象其它蚂蚁一样总重复同样的路,他们会另辟蹊径,如果令开辟的道路比原来的其他道路更短,那么,渐渐,更多的蚂蚁被吸引到这条较短的路上来。
(4)最后,经过一段时间运行,可能会出现一条最短的路径被大多数蚂蚁重复着。
2.2任务(1)构建二维数组将每条路径的信息素量、相应路径的信息素增量和城市距离放入其中。
(2)输入两个城市间的坐标,并得到两个城市间的最近距离。
(3)画出所有模块的流程图;(4)编写代码;(5)程序分析与调试。
2.3运行环境(1)WINDOWS2000/XP系统(2)TurboC2.0编译环境2.4开发工具C语言3 概要设计与详细设计3.1系统流程图如图3.1所示。
图3.1系统流程图3.2访问流程图如图3.2所示。
图3.2访问流程图4 编码与实现4.1分析程序开始运行,蚂蚁们开始从窝里出动了,寻找食物;他们会顺着屏幕爬满整个画面,直到找到食物再返回窝。
其中,‘D’点表示食物,‘A’表示窝,白色块表示障碍物,‘+’就是蚂蚁了。
预期的结果:各个蚂蚁在没有事先告诉他们食物在什么地方的前提下开始寻找食物。
当一只找到食物以后,它会向环境释放一种信息素,吸引其他的蚂蚁过来,这样越来越多的蚂蚁会找到食物!有些蚂蚁并没有象其它蚂蚁一样总重复同样的路,他们会另辟蹊径,如果令开辟的道路比原来的其他道路更短,那么,渐渐,更多的蚂蚁被吸引到这条较短的路上来。
c课程设计报告模板
c课程设计报告模板一、课程目标知识目标:1. 让学生掌握课程核心概念,如XXX(具体概念),并能够准确描述其定义及特点。
2. 使学生了解课程相关知识点,如XXX(具体知识点),并能够运用这些知识点分析和解决实际问题。
3. 帮助学生建立知识体系,将本课程内容与之前所学的知识进行有效衔接,形成完整的知识网络。
技能目标:1. 培养学生运用XXX技能(如分析、计算、实验等)解决实际问题的能力。
2. 提高学生团队协作和沟通能力,能够就课程相关问题进行有效讨论和分享。
3. 培养学生自主学习能力,能够通过查阅资料、网络搜索等方式,拓展课程相关知识。
情感态度价值观目标:1. 培养学生对学科的兴趣和热情,激发他们主动探索学科知识的欲望。
2. 培养学生具有积极向上的学习态度,面对困难和挑战时,能够保持坚持不懈的精神。
3. 通过课程学习,使学生认识到所学知识在实际生活中的应用价值,培养他们的社会责任感和创新精神。
课程性质:本课程为XXX学科的基础课程,旨在帮助学生建立扎实的学科基础,为后续学习奠定基础。
学生特点:本年级学生具有较强的求知欲和自主学习能力,但在知识体系搭建和实际应用方面仍有待提高。
教学要求:结合学生特点,注重启发式教学,引导学生主动探究和思考,将理论知识与实际应用相结合,提高学生的学科素养。
在教学过程中,关注学生个体差异,因材施教,使每个学生都能在课程中取得良好的学习成果。
通过多元化的教学评估手段,确保课程目标的达成。
二、教学内容根据课程目标,本课程教学内容主要包括以下几部分:1. 知识点讲解:涵盖教材第X章至第X章,重点讲解XXX(具体知识点)、XXX(具体知识点)等核心概念,以及它们在实际应用中的体现。
2. 技能训练:结合教材第X章,开展XXX(具体技能)训练,如实验操作、数据分析等,以提高学生的实际操作能力。
3. 案例分析:选取教材第X章的典型案例,分析其中涉及的知识点和技能,让学生深入了解学科知识在实际生活中的应用。
c语言课程设计报告范例
c语言课程设计报告范例一、教学目标本节课的教学目标是让学生掌握C语言的基本语法和编程思想,培养学生编写简单程序的能力。
具体分为以下三个部分:1.知识目标:使学生了解C语言的发展历程、基本语法、数据类型、运算符、控制结构等基础知识。
2.技能目标:培养学生使用C语言进行编程的能力,使学生能够编写简单的输入输出程序、控制流程程序和函数程序。
3.情感态度价值观目标:培养学生对计算机编程的兴趣,提高学生分析问题和解决问题的能力,培养学生团队合作的精神。
二、教学内容本节课的教学内容主要包括以下几个部分:1.C语言的发展历程和特点:介绍C语言的起源、发展过程以及其在计算机编程领域的地位和作用。
2.基本语法和数据类型:讲解C语言的基本语法规则、数据类型、变量、常量等。
3.运算符和控制结构:介绍C语言的运算符分类、用法以及条件语句和循环语句的实现。
4.函数的定义和调用:讲解函数的定义、声明、调用以及函数的参数传递和返回值。
5.简单的输入输出程序:演示如何使用C语言进行输入输出操作,如打印输出、输入控制等。
三、教学方法为了提高教学效果,本节课将采用以下几种教学方法:1.讲授法:讲解C语言的基本语法、数据类型、运算符、控制结构等知识点。
2.案例分析法:通过分析典型程序案例,使学生理解程序设计的基本思路和方法。
3.实验法:让学生动手编写程序,巩固所学知识,提高编程能力。
4.讨论法:学生进行小组讨论,分享学习心得,互相答疑解惑。
四、教学资源为了支持教学内容的实施,本节课将准备以下教学资源:1.教材:选用权威、实用的C语言教材,如《C程序设计语言》等。
2.参考书:提供相关的C语言参考书籍,以便学生课后自主学习。
3.多媒体资料:制作精美的PPT课件,直观展示C语言的语法和编程思想。
4.实验设备:准备计算机实验室,让学生进行编程实践。
五、教学评估为了全面、客观地评估学生的学习成果,本节课采用以下评估方式:1.平时表现:观察学生在课堂上的参与程度、提问回答等情况,了解学生的学习态度和兴趣。
c语言课程设计报告格式
c语言课程设计报告格式一、教学目标本课程旨在通过学习C语言,使学生掌握C语言的基本语法、数据类型、运算符、控制结构、函数等基本知识,培养学生编程思维和解决问题的能力。
具体目标如下:1.知识目标:(1)理解C语言的基本语法和编程规范;(2)掌握C语言的数据类型、运算符和控制结构;(3)熟悉函数的定义和调用,了解常见库函数的使用;(4)了解C语言的输入输出操作和文件操作。
2.技能目标:(1)能够使用C语言编写简单的程序,解决实际问题;(2)具备一定的代码调试和排错能力;(3)能够阅读和理解C语言的程序代码;(4)掌握基本的编程规范和编程技巧。
3.情感态度价值观目标:(1)培养学生对计算机科学的兴趣和热情;(2)培养学生团队合作和自主学习的精神;(3)培养学生编程思维和解决问题的能力;(4)培养学生良好的编程习惯和道德素养。
二、教学内容本课程的教学内容主要包括C语言的基本语法、数据类型、运算符、控制结构、函数等基本知识。
具体安排如下:1.C语言的基本语法和编程规范;2.数据类型、运算符和控制结构;3.函数的定义和调用,常见库函数的使用;4.输入输出操作和文件操作。
三、教学方法本课程采用讲授法、案例分析法、实验法等多种教学方法,以激发学生的学习兴趣和主动性。
具体方法如下:1.讲授法:通过讲解C语言的基本语法、数据类型、运算符、控制结构、函数等基本知识,使学生掌握C语言的基本概念和编程技巧;2.案例分析法:通过分析实际案例,使学生了解C语言在实际编程中的应用,提高学生的编程能力和解决问题的能力;3.实验法:通过实验操作,使学生熟悉C语言的编程环境和编程方法,培养学生的动手能力和实践能力。
四、教学资源本课程的教学资源包括教材、参考书、多媒体资料和实验设备等。
具体资源如下:1.教材:《C程序设计语言》(K&R)、《C Primer Plus》等;2.参考书:《C语言程序设计》、《C语言实例教程》等;3.多媒体资料:课件、教学视频、编程实例等;4.实验设备:计算机、编程环境、网络等。
c语言课程设计设计报告
c语言课程设计设计报告一、教学目标本课程的教学目标是让学生掌握C语言的基本语法、数据类型、运算符、控制结构、函数等基本知识,培养学生编程思维和解决问题的能力,使学生能够熟练使用C语言进行程序设计。
1.理解C语言的基本语法和规则;2.掌握数据类型、运算符和表达式;3.熟悉控制结构,如if语句、for循环、while循环等;4.了解函数的定义和调用;5.掌握基本的输入输出操作。
6.能够编写简单的C语言程序,解决实际问题;7.能够阅读和理解C语言程序代码;8.能够运用C语言进行算法实现和程序设计;9.能够使用调试工具对程序进行调试和优化。
情感态度价值观目标:1.培养学生的编程兴趣,激发学生主动学习和探索的精神;2.培养学生解决问题的能力和团队合作意识;3.培养学生良好的编程习惯和规范的编程思维;4.培养学生对计算机科学的热爱和敬业精神。
二、教学内容本课程的教学内容主要包括C语言的基本语法、数据类型、运算符、控制结构、函数等基本知识。
具体安排如下:1.第一章:C语言概述介绍C语言的历史、特点和应用领域,熟悉C语言的编译环境和基本语法。
2.第二章:数据类型和运算符学习基本的数据类型、运算符和表达式,掌握变量、常量的定义和使用。
3.第三章:控制结构学习if语句、for循环、while循环等控制结构,掌握分支结构和循环结构的使用。
4.第四章:函数学习函数的定义、声明和调用,了解函数的参数传递和返回值,掌握常用库函数的使用。
5.第五章:输入输出操作学习C语言的输入输出函数,如printf、scanf等,掌握文件操作的基本方法。
6.第六章:数组和字符串学习一维数组、多维数组和字符串的基本操作,掌握数组的排序和查找算法。
7.第七章:指针学习指针的概念和用法,掌握指针与数组、指针与函数的关系,了解指针数组和指向指针的指针。
8.第八章:结构体和联合体学习结构体的定义和使用,了解联合体的特点和应用,掌握枚举类型的定义和使用。
c语言课程设计报告书3篇
c语言课程设计报告书3篇c语言课程设计报告书1我们学习它,有助于我们更好的了解计算机,与计算机进行交流,因此,c语言的学习对我们尤其重要。
在这个星期里,我们专业的学生在专业老师的带领下进行了c语言程序实践学习。
在这之前,我们已经对c语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在了解的范围,对里面的好多东西还是很陌生,的在运用起来的时候还是感到很棘手,毕竟,万事开头难嘛。
由于时间的关系,我们的这次实践课程老师并没有给我们详细的介绍,只是给我们简单的介绍了几个比较重要的实际操作。
包括了程序模块处理。
简单界面程序。
高级界面程序。
程序的添加修改。
用程序做一元线性回归处理以及用c语言程序来画粒度分布图等这几样比较重要的时间操作。
上机实验是学习程序设计语言必不可少的实践环节,特别是c语言灵活、简洁,更需要通过编程的实践来真正掌握它。
对于程序设计语言的学习目的,可以概括为学习语法规定、掌握程序设计方法、提高程序开发能力,这些都必须通过充分的实际上机操作才能完成。
学习c程序设计语言除了课堂讲授以外,必须保证有不少于课堂讲授学时的上机时间。
因为学时所限,课程不能安排过多的上机实验,所以希望学生有效地利用课程上机实验的机会,尽快掌握用c语言开发程序的能力,为今后的继续学习打下一个良好的基础。
为此,我们结合课堂讲授的内容和进度,安排了12次上机实验。
课程上机实验的目的,不仅仅是验证教材和讲课的内容、检查自己所编的程序是否正确,课程安排的上机实验的目的可以概括为如下几个方面:1、加深对课堂讲授内容的理解课堂上要讲授许多关于c语言的.语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。
然而要使用c语言这个工具解决实际问题,又必须掌握它。
通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握c语言的语法规定。
对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,这是由于大部分学生是初次接触程序设计,缺乏程序设计的实践所致。
c语言课程设计报告模板
c语言课程设计报告模板
(一)编制模板目的
本文是c语言课程设计报告的模板,旨在指导c语言课程设计的实施、文件书写及文档报告的编写工作,提供系统、完整的内容和报告要求,以保障报告质量。
(二)项目介绍
1、项目名称:本课程的重点在于使学生学习、掌握,使用c语言进行
程序设计。
2、项目内容:本课程以c语言为主要教学课程,内容涵盖c语言基本
语法、循环结构、函数等。
3、开发工具:本课程使用DEV-C++来开发c语言程序,并采用vnc进行调试和运行程序。
(三)预期成果
1、课程成果:本课程让学生掌握c语言的基本语法、循环结构、函数等;正确使用开发工具实现一定的基本算法,并能够进行程序的调试
和运行;能够运用c语言实现简单的人工智能算法。
2、文档成果:完成c语言课程设计报告,报告应包括项目简介、使用建议、技术参数、课程结果、结论等内容。
(四)报告要求
1、报告内容:报告应包括项目简介、使用建议、技术参数、软件开发准备、课程实施说明、课程结果、存在的问题、结论及建议等内容;
2、报告格式:报告采用A4纸、双栏格式,字体使用宋体;
3、报告字数:报告的字数应不少于3000字。
C语言课程设计报告模板
中国地质大学(武汉)课程设计报告题目 c 语言程序设计姓名学号专业统计学所在院系经济管理学院指导老师江俊君日期2016/6/11目录目录 (2)1.课程论文题目 (3)2.程序设计思路 (4)3.功能模块图 (5)4.数据结构设计 (6)5.算法设计 (7)6.程序代码 (10)7.程序运行结果 (16)8.编程中遇到的困难及解决方法 (19)9.总结心得及良好建议 (20)10.致谢 (20)1.课程论文题目职工信息管理系统内容:[ 要求]职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复 )。
功能 :实现简单的职工工资信息管理,职工工资的基本信息包括编号、姓名、基本工资、奖金、工资总额等1.系统以菜单方式工作。
2.职工信息录入功能(职工信息用文件保存)。
3.职工信息浏览功能。
4.职工信息查询功能。
查询方式。
(1)按学历查询。
(2)按工号查询。
2.程序设计思路( 1)需求分析系统要以菜单方式工作,因而根据题目要求,提供键盘式选择菜单实现功能选择,职工信息采用文件保存,所以应提供文件的输入、输出等操作;在程序中需要浏览职工的信息,应提供显示、查找、等操作;要实现职工信息的查询,则要提供查找功能(包括按学历查询和按工号查询两种查询方式);要实现职工信息的删除、修改,则要提供文件记录的删除、修改功能。
(2)总体设计根据上面的需求分析 ,可以将这个系统设计分为以下模块:职工信息输入模块、职工信息浏览模块、职工信息查询模块、职工信息删除与修改模块(3)数据信息建立职工信息结构体,结构体成员包括工号、姓名、性别、年龄、学历、工资、住址和电话。
Struct employee{char num[20];char name[8];char sex[10];char age[10];char xueli[30];char wanges[10];char tel[15];char addr[50];}em[N]3.功能模块图录入模块菜单浏览模块10080学历查询60东部40西部20查询模块北部第一季度第三季度工号查询4.数据结构设计建立职工信息结构体,结构体成员包括工号、姓名、性别、年龄、学历、工资、住址和电话。
C语言课程设计报告模板
C语言课程设计报告班级:16物联网」、题目说明(1)读取输入信息,能正确进行数字运算(2)拥有记忆功能,可查询最近几次计算结果并继续进行数字运算。
、基本功能实现(1) 能实现两个数之间的加减,乘,除,乘方,开方等运算。
实现记忆功能,可保留近十位结果,可用#键查看。
*键作为清0键,清除当前屏幕上的值为0表示重新开、设计流程(可以画流程图,可以直接写说明)开始1.如果输入的是数字输入索要执行的操作符和操作数2如果为q*调用putres()将结果保存查看历史结果结束输入值判断如果输入的是字符判断如果为#*调用yunsuan()计算并输出结四、代码#i nclude <stdio.h>#i nclude <stdlib.h>#in elude <stri ng.h>#in elude <math.h>double yun sua n( double a, char op erate, double b); // 处理数值之间的运算void Pu tRes(double array[], double res, int *i); // 保存该次运算结int main()char str[40];double a = 0;double b = 0;double res = 0;double history[10] = {0,0,0};char opt;int i = 0;printf(" 欢迎进入计算功能(eg: 1 \n+ 1 ; '#' :查询历史结果;'q': 退出程序)•…\n");while(1){fgets(str,40,stdi n); // 将从键盘的一整行标准输入保存在字符串str中if(ssca nf(str,"%lf", &a) == 1){ // 将str以长浮点型的格式放入a中,如果返回值为1,说明输入的是数值,scan f("%c %lf", &opt, &b); // 获取操作符的值和另外一个操作数的值res = yun sua n(a,op t,b); //调用yunsuan ()函数计算,并将结果给resprin tf("%lf %c %lf = %lf\n\n",a, opt, b, res);PutRes(history, res, &); // 调用函数PutResO将本次结果保存到数组history中(i用引用传递)// prin tf("%d\n", i);}else if(sscanf(str,"%c",&opt) ==1){ // 将str以字符型的格式放入opt中,如果返回值为1,说明输入的是字符if(opt == '#'){ // 如果opt为’#',则显示history 中的数值int j = 0;for(j = 0; j < i; ++j){ //i 为history 中存放的数值个数printf(" %lf ", history[j]);prin tf("\n");}else if(op t == '+' || op t == '-' || opt == '*' || op t == '/'II opt =='"){ // 如果为操作符,则为连续运算,则下面秩序获得b的值, a 的值则为上次运算结果sca nf("%lf", &b);opt = str[0]; // 因为str是字符串,而opt是字符,所以不能直接赋值,上句判断出str是字符,所以是只有一个字符的字符串,故可以这样赋值a = res;res = yun sua n(a,op t,b);prin tf("%lf %c %lf = %lf\n\n",a, opt, b, res);PutRes(history, res, &i);}else if(op t == 'q'){ //'q'退出程序prin tf("Bye Bye....."return 0;return 0;/*功能:处理数值之间的运算参数1:操作数1参数2 :操作方式参数3:操作数2返回值:两数值的运算结果。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
中国地质大学(武汉)课程设计报告题目 c语言程序设计姓名学号专业统计学所在院系经济管理学院指导老师江俊君日期 2016/6/11目录目录..................................................... 错误!未定义书签。
1.课程论文题目 ........................................... 错误!未定义书签。
2.程序设计思路 ........................................... 错误!未定义书签。
3.功能模块图............................................. 错误!未定义书签。
4.数据结构设计 ........................................... 错误!未定义书签。
5.算法设计............................................... 错误!未定义书签。
6.程序代码............................................... 错误!未定义书签。
7.程序运行结果 ........................................... 错误!未定义书签。
8.编程中遇到的困难及解决方法 ............................. 错误!未定义书签。
9.总结心得及良好建议 ..................................... 错误!未定义书签。
10.致谢.................................................. 错误!未定义书签。
1.课程论文题目职工信息管理系统内容:[要求]职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。
功能:实现简单的职工工资信息管理,职工工资的基本信息包括编号、姓名、基本工资、奖金、工资总额等1. 系统以菜单方式工作。
2. 职工信息录入功能(职工信息用文件保存)。
3. 职工信息浏览功能。
4.职工信息查询功能。
查询方式。
(1)按学历查询。
(2)按工号查询。
2.程序设计思路(1)需求分析系统要以菜单方式工作,因而根据题目要求,提供键盘式选择菜单实现功能选择,职工信息采用文件保存,所以应提供文件的输入、输出等操作;在程序中需要浏览职工的信息,应提供显示、查找、等操作;要实现职工信息的查询,则要提供查找功能(包括按学历查询和按工号查询两种查询方式);要实现职工信息的删除、修改,则要提供文件记录的删除、修改功能。
(2)总体设计根据上面的需求分析,可以将这个系统设计分为以下模块:职工信息输入模块、职工信息浏览模块、职工信息查询模块、职工信息删除与修改模块(3)数据信息建立职工信息结构体,结构体成员包括工号、姓名、性别、年龄、学历、工资、住址和电话。
Struct employee{char num[20];char name[8];char sex[10];char age[10];char xueli[30];char wanges[10];char tel[15];char addr[50];}em[N]3.功能模块图4. 数据结构设计建立职工信息结构体,结构体成员包括工号、姓名、性别、年龄、学历、工资、住址和电话。
Struct employee{char num[20];入模块:输入职工的工号、姓名以及其它的一些职工的相关信息,通过自己定义的void append()函数来实现。
2.浏览模块:浏览所有职工的相关信息,通过自己定义的void display()函数来实现。
3. 按职工号查询模块:可以按职工号来查询职工的相关信息,通过自己定义的void search_num()函数来实现。
8.按职工的的学历查询模块:可以按职工的学历来查询职工的相关信息,通过自己定义的void search_xuelil函数来实现。
4.退出模块:退出职工信息管理系统,通过头文件中的exit(0)函数来实现。
1.录入模块void append(){i nt i,n;F ILE*fp;f p=fopen("employee_list","wb");um); printf("请输入姓名: ");scanf("%s",em[i].name);getchar();printf("请输入性别(f--女 m--男): ");scanf("%s",&em[i].sex);printf("请输入年龄: ");scanf("%s",&em[i].age);printf("请输入学历: ");scanf("%s",em[i].xueli);printf("请输入工资: ");scanf("%s",&em[i].wanges);printf("请输入住址: ");scanf("%s",em[i].addr);printf("请输入电话: ");scanf("%s",em[i].tel);printf("\n");}s ave(n);}2.浏览模块void display(){i nt i;int m=load();p rintf(" 职工号\t姓名\t\t性别\t\t年龄\n");p rintf(" 学历\t\t工资\t\t住址\t\t电话\n");f or(i=0;i<m;i++){printf("%d\t",em[i].num);printf("%s\t",em[i].name);printf("%s\t",em[i].sex);printf("%s\t",em[i].age);printf("%s\t",em[i].xueli);printf("%s\t",em[i].wanges);printf("%s\t",em[i].addr);printf("%s\t",em[i].tel);printf("\n");}}2.查询模块void search(){i nt a;p rintf("\n按职工号查询请按1\n按学历查询请按2\n返回主菜单请按3\n"); s canf("%d",&a);s witch(a){case 1:printf("按职工号查询\n");search_num();break;case 2:printf("按学历查询\n");search_xueli();break;case 3:main();break;default: printf("您输入有误,请重新选择!\n"); break;}}(1)按工号查询void search_num(){i nt num,i,t; int m=load(); um){printf("\n已找到此人,其记录为:\n");printf(" 职工号\t姓名\t\t性别\t\t年龄\n");printf(" 学历\t\t工资\t\t住址\t\t电话\n");printf("%d\t",em[i].num);printf("%s\t",em[i].name);printf("%s\t",em[i].sex);printf("%s\t",em[i].age);printf("%s\t",em[i].xueli);printf("%s\t",em[i].wanges);printf("%s\t",em[i].addr);printf("%s\t",em[i].tel);printf("\n");break;}if(i==m) ueli,xueli)==0){printf("\n已找到,其记录为:\n");printf(" 职工号\t姓名\t\t性别\t\t年龄\n");printf(" 学历\t\t工资\t\t住址\t\t电话\n");printf("%d\t",em[i].num);printf("%s\t",em[i].name);printf("%s\t",em[i].sex);printf("%s\t",em[i].age);printf("%s\t",em[i].xueli);printf("%s\t",em[i].wanges);printf("%s\t",em[i].addr);printf("%s\t",em[i].tel);printf("\n");}i f(i==m)printf("\n对不起,查无此人\n");p rintf("\n");p rintf("返回查询函数请按1,继续查询学历请按2\n"); s canf("%d",&t);s witch(t){case 1:search();break;case 2:search_xueli();break;default :break;}}6.程序代码#include <>#include <>入职工信息\n");printf("2.浏览职工信息\n");printf("3.查询职工信息\n");printf("4.退出\n");printf("请按功能序号:\n");scanf("%d",&n);switch(n){case 1:append();break;case 2:display();break;case 3:search();break;case 4:exit(0);n=0;break ;default:printf("输入错误指令\n");}}p rintf("\n按任意键继续\n");g etch();}void append(){i nt i,n;F ILE*fp;f p=fopen("employee_list","wb");um);printf("请输入姓名: ");scanf("%s",em[i].name);getchar();printf("请输入性别(f--女 m--男): ");scanf("%s",&em[i].sex);printf("请输入年龄: ");scanf("%s",&em[i].age);printf("请输入学历: ");scanf("%s",em[i].xueli);printf("请输入工资: ");scanf("%s",&em[i].wanges);printf("请输入住址: ");scanf("%s",em[i].addr);printf("请输入电话: ");scanf("%s",em[i].tel);printf("\n");}s ave(n);}void save(int n)um);printf("%s\t",em[i].name);printf("%s\t",em[i].sex);printf("%s\t",em[i].age);printf("%s\t",em[i].xueli);printf("%s\t",em[i].wanges);printf("%s\t",em[i].addr);printf("%s\t",em[i].tel);printf("\n");}}void search(){i nt a;p rintf("\n按职工号查询请按1\n按学历查询请按2\n返回主菜单请按3\n");s canf("%d",&a);s witch(a){case 1:printf("按职工号查询\n");search_num();break;case 2:printf("按学历查询\n");search_xueli();break;case 3:main();break;default: printf("您输入有误,请重新选择!\n"); break;}}void search_num(){i nt num,i,t; int m=load(); um){printf("\n已找到此人,其记录为:\n");printf(" 职工号\t姓名\t\t性别\t\t年龄\n");printf(" 学历\t\t工资\t\t住址\t\t电话\n");printf("%d\t",em[i].num);printf("%s\t",em[i].name);printf("%s\t",em[i].sex);printf("%s\t",em[i].age);printf("%s\t",em[i].xueli);printf("%s\t",em[i].wanges);printf("%s\t",em[i].addr);printf("%s\t",em[i].tel);printf("\n");break;}if(i==m) ueli,xueli)==0){printf("\n已找到,其记录为:\n");printf(" 职工号\t姓名\t\t性别\t\t年龄\n");printf(" 学历\t\t工资\t\t住址\t\t电话\n");printf("%d\t",em[i].num);printf("%s\t",em[i].name);printf("%s\t",em[i].sex);printf("%s\t",em[i].age);printf("%s\t",em[i].xueli);printf("%s\t",em[i].wanges);printf("%s\t",em[i].addr);printf("%s\t",em[i].tel);printf("\n");}i f(i==m)printf("\n对不起,查无此人\n");p rintf("\n");p rintf("返回查询函数请按1,继续查询学历请按2\n"); s canf("%d",&t);s witch(t){case 1:search();break;case 2:search_xueli();break;default :break;}}7.程序运行结果1.运行程序菜单模块初始化,如图1.按1进入职工信息录入模块,输入职工信息工号007,姓名007,性别M,年龄30,学历zhongguodizhidaxue,工资9999,住址beiqu21d电话888888如图2.在输入完N个数据后,按2进入职工信息浏览模块,看到信息3.按3进入职工查询模块,如图按1进入按职工号查询模块,输入007查询,如图按2进入学历查询模块,输入zhongguodizhidaxue,如图按1返回查询函数,按4退出,如图8.编程中遇到的困难及解决方法这一次老师让我们从第8题和第21题中选,瞄了两眼,决定选职工信息管理第8题,没想到这么难弄,足足用了两周时间才搞定。