怎么用C语言设计一个简单计算器 #include
随着我国社会经济的不断发展,计算机信息技术也逐渐普及。下面是我为大家整理的计算机专科毕业论文,供大家参考。
【摘要】本文尝试从计算机软件技术课程教学出发,将CDIO的教学理念融入到平时授课过程,培养学生对课程知识的掌握,更重要的是培养学生团结合作能力。通过一段时间的实践表明,基于CDIO的课程教学能够提供学生自主性和创新性,提高学生学习兴趣和解决问题的能力。
【关键词】教学改革;CDIO;实践能力
1引言
计算机软件技术是一门软件设计的基础知识、方法与实用技术相结合的课程,为计算机软件应用开发、技术管理工作奠定理论基础,目前课程教学多是以传统理论课堂教学结合实验教学的模式进行,学生反映上课即使听懂遇到实际问题时也不知如何下手解决,尤其编程能力弱的学起来更加吃力,通常存在以下几方面问题。(1)课程涉及知识点多,理论性强,要求学生要有较强的逻辑思维和分析能力,尤其有具有较好的编程功底,这使得学这课程之前让部分学生产生畏难情绪。(2)实验课程中学生独立完成的是一些已有结论的验证性实验,以致学生软件编程能力得不到培养和提升。(3)课程考核以闭卷理论知识点考核作为重点,学生为了应付考试,可能死记硬背一些概念甚至一些编程题目,学生素质和实践能力得不到有效的培养和训练。针对以上问题,按照课程特点以及教学规律相应进行一些教学改革探索,以CDIO教学模式(构思Conceive、设计Design、实现Implement、运作Operate)进行每个教学环节落实,让学生以自主主动地、有机联系地方式学习。CDIO模式与传统的以传授知识为主的教学模式相比,更强调知识的运用和个人能力的培养。它要求我们在教学中,既要注重基础知识的传授,又要注重创新、设计和知识的综合应用;既要强调个人专业能力的培养,又要提倡团队合作精神的培养,这种教学模式能开拓学生的创新精神,全面提升学生的综合素质,让学生掌握扎实的基础知识,培养其责任感和团队合作精神。
2教学改革措施
目前,计算机软件技术教学改革主要从两个方面进行,即教学内容的改革和课程实验部分的改革。
教学方法设计[1]
基于CDIO教学理念,在教学过程中,以项目为牵引,以任务为依托,把课堂教学环境模拟成CDIO教育环境,即以项目构思、设计、实现和运行的生命周期为载体来组织教学。具体实施过程如下:
(1)首先选择具有代表性的项目任务,整个项目具备详细的系统开发过程,有较完整的系统结构、及基本需要的一些功能模块,在功能模块中有数据能演示,比如学生成绩管理系统。
(2)在教学过程中,根据教学进度和教学内容,向学生详细地介绍项目任务的构思、设计、实现和运行各个环节,从项目任务的需求分析,到各功能模块的设计与实现,到后期的运行和维护等。尤其一些关键功能模块的实现,为了便于、强化学生理解,可以设计一些类似的小任务。
(3)通过项目任务的贯穿,可以对已讲授的知识点进行总结,对后续课程的知识点以设问方式引出,引导学生积极主动思考,寻求解决方案。通过这种使前后知识点有机联系起来,使课程知识结构更系统。
实验教学设计
以往实验课都是一些验证性实验,学生通过查找互联网翻阅书本很快能找到解决路径。加上现在实验课时有限,通常布置一些小的项目,尽量涵盖课堂教学所涉及知识点,比如布置编程实现计算器。4-5人组成一个小组,以组长牵头组织大家分析,分配任务,利用课余时间共同协作完成。在这过程中包含一个CDIO项目周期[1](构思———需求分析、设计———实施方案、实现———编写代码、运作———作品测试、演示等)。实验课各小组汇报并演示所开发设计的项目。根据演示作品功能完整性、美观性等方面综合评价作为实验考评的依据,在这过程中又培养了学生独立思考,分析问题解决问题的能力,学生间合作沟通能力也得到锻炼。
积极参与各类竞赛
多年来,我们都鼓励学生参加蓝桥杯大学生程序设计大赛等类似比赛,通过参与比赛,学生编程能力得到快速提高,对课程基本概念和基础知识的理解也会更上一个台阶,牢固掌握所学知识,同时通过比赛拓展了学生的视野,学习目的性更强更明确,学习积极性相应地也提高了。这种做法也是符合CDIO理念,提高学生系统分析能力编程能力的。
教改存在问题
教改中存在最大问题可能是项目任务资源不足,类似教材不多,可供参考的有限,每个项目任务要具有代表性同时又包含各知识点,需要花大量的时间编制。经过一段时间积累应该素材不断会增加,并在原有基础上不断完善。
3结束语
CDIO理念在强调学生理论基础知识的同时,注重培养学生理论应用能力、团队合作能力。针对当前计算机软件技术课程教学过程中存在的问题,结合CDIO教学理念对学生的要求,探讨以项目为中心、以任务驱动教学,激发学生学习兴趣,培养学生的CDIO能力,取得了较好的教学效果。
参考文献:
[1]周立章.基于CDIO工程教学模式的C++程序设计教学改革探索[J].大众科技,2011(10):208-210.
[2]邱胜海,高成冲,王云霞,等.基于CDIO模式的数据库课程实验项目设计[J].中国现代教育装备,2012,157(21):43-45.
摘要:提高教学质量是高等院校各项工作的重中之重,而教学管理是提高教学质量的重要途径,加强教学管理对规范高校各项管理工作和提高教学水平起着十分重要的作用。随着高等院校计算机专业招生规模的日益扩大,学校教育资源有限以及学生数量不断增加等因素,使得计算机专业教学的开展存在很多问题。文章立足于计算机专业的发展现状,探讨了当前计算机专业在教学管理当中普遍存在的一些关键问题,讨论了如何建立科学、合理的教学管理模式,从管理者、教师和学生三个角色对计算机专业建立完备的教学管理模式进行分析和探讨。
关键词:计算机专业;教学管理;教学质量
教学质量是体现高等院校培养高质量人才、深化学校教学水平的一个重要指标,提高学校的教育质量,需要制定一套完善的教学管理模式。构建科学、合理、可操作性强的教学管理体系,有助于及时发现问题与不足,为领导者制定管理制度和工作规划提供依据。在当前计算机人才需求日益增多的现实背景下,开展计算机专业教学管理模式和制度建设的研究,能够推动计算机教育教学质量的长期发展,提高人才培养质量,这对推进计算机专业人才创新能力和动手能力具有重要的现实意义。
一、计算机教学管理模式的内涵
建立完善的教学管理模式,有助于及时发现教育教学过程中存在的问题,并能有效地解决问题,从而不断提高教育教学质量,最终实现高技能人才培养目标。学校应该有一个专门的队伍来进行教学的督导,督导者需要从学校的现实条件和发展计划出发来对教学部门的教学管理工作进行总的评价和指导,同时对不同的专业和系别进行具体的规划。针对计算机专业,要保证学生学习到计算机专业基础知识,同时要突出学生专业方向的培养;要能够满足社会或行业、企业用人需求,即高等院校的人才培养目标、课程标准或教学大纲、课程安排、教学内容、教学过程等要满足用人单位的需求以及计算机发展的方向;还应该满足国家创新性人才的培养,鼓励学生以及优秀青年教师勇于实践大胆创新,提高学生的团结合作意识以及沟通问题的能力。总之,督导者不仅要起到严格把关的作用,同时还要做到长期提供优质服务,广泛收集各种建议和意见,尽可能给学生和老师创造宽松有利的学习条件。计算机教学质量管理中教师具有极其重要的地位,要不断帮助和促进教师改进教学工作,不断提高其自身的教学水平,不断加强教师师资队伍建设。老师要注意计算机最新发展动态,紧跟其发展潮流,不能脱离社会落后于时代;青年教师要不断积累教学经验,完善教学方法,提高学生的学习兴趣和自己的教学水平。由于计算机专业的特点,老师需要不断更新、补充课程的教学内容,甚至有很多像慕课(MOOC)这样的网络开放新兴课程不断涌现,老师要终身学习,教学管理上也要给老师更多学习的机会,多组织青年教师到社会上的一线企业进行培训和实训。计算机专业是一个需要不断保持学习的专业,它更新换代特别快,从事计算机方面工作的学生要终身学习。所以老师不能只是授之鱼,更要授之以渔,使得学生在走向社会之后能够跟上计算机发展的步伐,始终保持敏锐的洞察力和很强的学习能力。因此,计算机教学质量管理要更注重学生学习能力的培养,而不是简单地完成当前的学习任务。计算机发展之迅速,已经不是原来单打独斗就可以完成一个任务的时代,要求学生有很强的合作能力、交流能力、适应能力、实践能力和组织能力等。教学中必须坚持对学生实施素质教育,不仅要重视学生的学习态度、出勤率、课堂纪律、作业完成情况,更要鼓励学生参加科技竞赛、课外拓展培训以及加强人文素质的培养。关注用人单位对专业人才培养质量的反馈,及时调整学生培养机制。
二、计算机专业教学管理中存在的主要问题
教学管理系统负责保证正常的教学秩序,是提高教学质量的根本。每个学校其实都有一套教学管理制度,然而对于不同的院系专业来说,有其自身的特点,本文主要针对计算机专业中存在的问题进行分析。
(一)教学管理模式尚不完备
随着计算机专业的不断改革以及国家对计算机教学提出的新要求,原有的管理制度难以跟上实际的发展需求,无论是人才培养目标、专业课程设置、教学管理手段以及学生的质量等,都有很大的变化,以前的教学管理模式往往重理论轻实践,大部分是理论学习为主导的模式,而且不同专业人才培养的目标和要求基本一致,没有根据不同的专业特色建立不同管理体系,这就需要有一套更科学、更灵活的教学质量管理体系,要符合不同专业特色,不断适应时代发展的要求,不断顺应社会科学发展的方向。
(二)实践教学资源短缺
计算机专业教学在条件允许的情况下,应该把大部分课程安排到机房进行教学,学习实践同步教学的模式更符合学生的学习习惯,也有利于老师的教学。但是鉴于学校学习资源的限制,实践课课时明显不足,使得教学的开展不是很顺利。计算机专业作为应用性要求较高的专业系别之一,要比其他专业增加实践教学的学时,特别是实践教学在计算机专业的学习当中占有极其重要的地位,直接关系到学生未来就业,其对社会输送应用型人才有着积极的影响。
(三)缺少以人为本的人才培养模式
学校教学质量管理与监督体系,缺少以人为本的管理理念。对于教学质量管理,还是以行政权力为重要手段,在体系中缺少专家学者的监控,忽视他们的建议,对教学质量的评价,其目的就是奖励和惩罚,很难理性地诊断和解决问题,不能以教育改革为目的对教师进行客观的评价,主管者与教师之间缺少互动。在评价学生的学业方面,过度重视理论化知识,忽视学生的应用实践能力,看重考试成绩,忽略学生的全面发展,导致学生缺乏综合能力。
(四)教学的连贯性和发展性
计算机专业的教学具有连贯性,课程学习必须在前序课程学习的条件下,后序课程才能很好地展开。这就要求排课的老师和讲授的老师有积极的沟通,在先序课程完成的情况下合理安排后序课程,保证学生学习的完整性和连贯性。而实际排课当中排课老师和授课老师往往沟通不足,这也是教学管理中需要重视的问题。
三、加强和完善教学质量管理的措施
计算机专业教学质量的提高和有序运行离不开两方面,一方面需要学校分管教学的领导公正、负责、公开地进行不定期监控,另一方面要充分调用老师、学生的教学积极性,调用各种渠道,全面地收集教学一线反馈的教学信息,并根据教学信息对各教学环节和影响教学质量的各个教学因素进行有效调整。针对上面对计算机专业教学管理中存在问题的分析,下面提出一些措施以期能提高教学质量,建立健全质量管理制度。
(一)设立教学团队和导师制度
计算机专业现在趋向于形成一个团队来完成一个工程,所以需要在一个团队负责人领导下有组织地进行。建立一支稳定、相对独立、具有较丰富教学经验和较强研究能力的团队,可以让大家资源共享,互相交流,让青年教师尽快融入。因为一个团队的研究方向、教学内容大致一样,这就方便组内成员可以经常组织讨论教学计划、课程的建设、课堂教学、课后辅导、作业批改、考试命题、成绩评定、成绩分析、实训实践的实施等问题。对于学生,可以在入校的时候给学生分配导师,导师进一步帮助学生制定适合学生专业方向的学习计划和安排,同时老师有研究项目也可以让学生早日参与到项目中来,为日后的学习工作和就业打下坚实基础。
(二)开展多层次评估工作
教学质量评估是实施教学质量管理的主要环节和有效手段,也是教学质量管理体系的一部分。首先,学院领导组织听课环节,每年安排优秀教师、青年教师进行公开课,一方面给青年教师向优秀骨干教师学习的机会,另一方面可以通过实践,大家给青年教师提出宝贵意见和建议,使青年教师可以及时看到自身教学的优势和不足。其次,教师互评,以教研室为单位,组织本领域或者同一门课的老师互相交流互相学习,资源分享,优势互补,因为同方向老师更加了解相关课程,可以给出更直接的建议。最后是学生评课。学生既是教育的接受者和评判者,也是教学的直接参与者,教与学是双方面的,教学质量的提高需要学生在其中积极参与。学生评教工作一般在每学期末(或课程结束时)进行,由教学系组织各班学生对本班任课教师进行教学工作评价,并将评价结果纳入教师教学工作评价管理系统。学生评教的内容包括教师的教学态度、教学素质、教学内容、教学方法、教学效果等。学生是教学工作的主体,对任课教师的教学质量好坏最有发言权。另外还可以建立学科竞赛,奖学金,扣分机制,惩罚机制等。教师评学与学生评教形成了良性互动,对教师“教”与学生“学”起到相互促进、共同提高教学质量的作用。
(三)提供多渠道学习机会
对于教师,可以组织教学经验不足的老师展开集训,观摩具有教学经验的教师讲课,组织有教学经验的教师深入实践环节,到企业中学习;组织教师进行微课、说课竞赛,分享教学心得;聘请学术型教师开展讲座,开拓视野,关注计算机最新发展动态。对于学生,经常聘请一些专业技术过硬的专家学者展开交流,组织学生去一些实际的企业公司进行参观交流,鼓励学生参加学生竞赛,增强动手能力和实践能力以及合作能力。
(四)转变教学方式和教学观念
从专业的讲解上,不仅要重视学生的基础学习,更要与时俱进地给学生补充学科的前沿知识,让学生对时下比较热门的计算机方向和知识有很好的了解。目前国家大力提倡翻转课堂,在教学过程中把以前单纯的老师在课堂上填鸭式讲解转变为学生互动交流,老师不仅仅是讲授知识,更多是提出问题,让学生自己去讨论问题和解决问题。课堂上不再是老师一个人的表演,而是学生做主角,老师答疑解惑而已的良好教学模式。
(五)重视实践实训的教学
计算机是一个需要学生动手练习的课程。在实践中巩固学生的理论知识,当作以后工作的实战演习,为以后培养较高技术应用能力打基础。除了引进企业工程师来校讲课,在双赢的前提下,可以带领组织学生到企业进行实习,使实训发展得到良性运转。
四、结束语
高等院校肩负着为国家发展和社会进步培养合格、优秀人才的重要任务,提高学校的教学质量,加强教学质量管理是符合学校发展规律的。在教学管理日益受到重视的情况下,如何建立合理的管理体制,使计算机专业的教学质量管理工作既能强化计算机专业的学科特点,又能积极适应教学发展的现代化,保持专业教学质量可持续化发展,是当前各大高校都在积极探讨和实践的问题。管理者、教师和学生三个角色要相互交流,相互监督,才能利于专业的不断进步和可持续发展。要健全质量责任制度,明确领导的管理职责,院系主要领导是教学质量的第一责任人,本部门教学质量优劣反映其工作业绩;要重视教师的培养,给青年教师更多机会提高自己,不仅给学生推行导师制度,也可以给青年教师安排经验丰富的教学名师进行指导;计算机专业是一个不断创新与发展的专业,要以应用型人才培养为目的,重视学生的创新能力和应用能力的培养,重视实践教学。高校应该采取多种手段,鼓励提倡学生积极参加社会实践,为以后的工作奠定基础。要以市场经济发展需求为导向,从社会的实际需求出发,设置计算机专业培养方案和人才培养模式,多与知名计算机企业合作,形成自己的特色与优势。
参考文献
[1]张凡.高职院校计算机专业实践性教学质量保障方案的研究[J].四川职业技术学院院报,2015,25(3):141-143.
[2]邓攀.实施教学质量工程提升教学管理水平[J].高教学刊,2014,14:108-109.
[3]王红茹.提高《机电系统建模与仿真》课程教学质量的新探索[J].科技教育,2015,9:151-152.
[4]王承淑.教学质量监控的问题及对策研究[J].当代教育与文化,2015,7(4):112-116.
[5]施燕.加强教学质量内部监控与管理的实践探索[J].赤峰学院学报,2013,29(10):197-198.
[6]冯志敏,林麒,贾让成.高校内部教学质量监控体系的设计与运行[J].高等农业教育,2003,10(10):28-30.
西安工业大学操作系统课程设计报告课 目:¬¬¬¬ 银行家算法学 院: 计算机科学与工程学院指导教师: 姜虹学 生: 王丽娇班 级: 网络工程080610127完成时间:2010年12月25日操作系统课程设计报告课 目:¬¬¬¬ 银行家算法学 院: 计算机科学与工程学院指导教师: 姜虹学 生: 王丽娇班 级: 网络工程080610127目 录1、项目内容、要求与分组情况总体介绍 22、概要设计 开发工具及环境 任务及需求分析 功能模块设计 工作原理 33、 具体实现 类设计 模块及实现代码介绍 34、运行调试与分析讨论 45、设计体会与小结 66、参考文献 7附录:(源程序) 71、项目内容、要求与分组情况总体介绍项目内容、要求:本次实验的目标是制作一个计算器,可以进行简单的四则运算(加、减、乘、除)。小组的具体分工情况见下表:小组组长 谌江波成员 子项目名称 具体要求谌江波 模块的组合及测试 查找出程序的错误并改正肖权 数字键的注册 将数字键注册监听者,使其功能正常刘达辉 窗口的创建和分配 设计计算器的界面李晓阳 组合其余同学的工作 是程序完整化詹烨刚 编写具体的计算方法 添加运算符号及功能代码2、概要设计开发工具及环境文本编辑器:记事本;运行环境:命令提示符(DOS环境)。 任务及需求分析设计简易计算器程序,实现简单的运算(加减乘除),具体任务如下:1) 计算器窗口界面布局设计;2) 各种计算功能的算法分析;3) 编程实现具体的计算功能;4) 运行测试程序,调试纠正运行错误。5) 调试无误,运行,测试具体算法功能。 功能模块设计计算器的模块设计图如下: 工作原理点击相应的数字键,即会在显示文档中显示该数字。进行相应的运算,首先输入第一个计算数字,然后输入运算符,再输入第二个计算数字,点击“=”按钮即得计算结果。同时,还有归零功能,点击该按钮,显示栏中即可归零。3、 具体实现 类设计类名:jisuanqi作用:功能代码,窗口布局设定public class Calculator extends WindowAdapter{}¬WindowAdapter实现了WindowListener的类,实现了(new WindowAdapter(){});———————————————————————————类名:WindowDestroyer作用:用于退出窗口动作关键代码:class close implements ActionListener {public void actionPerformed(ActionEvent e) {(0);} 模块及实现代码介绍Frame fm = new Frame("简单计算器");for (int i = 0; i <= 16; i++) {b[i] = new Button(ss[i]);}for (int i = 0; i <= 15; i++) {(b[i]);} //创建按钮 并添加到P2b[16].setBackground();txt = new TextField(15);(false);for (int i = 0; i <= 16; i++) {b[i].addActionListener(new buttonlistener());…… }注:此方法主要设置窗口、面板、各个按键。对各个按键进行定义(定义好各按键该实现什么功能)、排布,将各个按键注册到监听器上。———————————————————————————(() + ());if (() == "归零")("");注:该代码使每次进入时的文本都清空———————————————————————————class close implements ActionListener {//退出public void actionPerformed(ActionEvent e) {(0);}注:该方法实现了窗口的关闭4、运行调试与分析讨论调试运行4*5运算,运算过程如下所示:1)命令提示符中运行计算器程序,如下图:2)计算器界面显示,输入第一个运算值“4”,如下图:3)输入运算符“*”,如下图:4)输入第二个运算值“5”,如下图所示:5)点击计算器按钮“=”,得出计算结果。如下图:5、设计体会与小结通过这次课程设计,我们了解到java也是可以分工合作的,虽然最后的整合过程非常麻烦,但是在整合完后,我们发现,课本被翻过很多遍,很多以前不知道的东西就这样豁然开朗了。我们还引用了很多从来没有用过的语句块,大多是从网上找到,然后自己整合进入代码,再实现我们想要的功能。编程是个艰难的过程,很多功能语句都需要上网或者是查其他书籍来查看他们的用法,课本上的东西对我们来说远远不够,我们要把目光放长远一些。这次的课程设计使我对JAVA的许多东西都有了更深一步的了解,以前对自己的要求是看得懂就行,现在才发现,光能看懂是远远不够的,能看懂并不代表你会!只有自己真的亲身体验到了,才会知道。这个礼拜的课程设计是这个学期最累的一个礼拜,但是,我们的付出总算有回报,虽然我们的计算器可能还存在不少的问题,但是,至少它可以正常运行四则运算,基本达到了我们预期的要求,所以,这个礼拜同样是我最充实的一个礼拜。6、参考文献[1]杜春涛,《面向对象程序设计—Java语言》,中国铁道出版社.[2]丁振凡,《JAVA语言实用教程》,北京邮电大学出版社.[3]附录:(源程序)import .*;import .*;public class jisuanqi extends WindowAdapter {Panel p1 = new Panel();Panel p2 = new Panel();Panel p3 = new Panel();TextField txt;private Button[] b = new Button[17];private String ss[] = { "7", "8", "9", "+", "4", "5", "6", "-", "1", "2", "3", "*", "归零", "0", "=", "/", "关闭" };static double a;static String s, str;//定义变量 创建对像public static void main(String args[]) {(new jisuanqi()).frame();}public void frame() {Frame fm = new Frame("简单计算器");for (int i = 0; i <= 16; i++) {b[i] = new Button(ss[i]);}for (int i = 0; i <= 15; i++) {(b[i]);} //创建按钮 并添加到P2b[16].setBackground();txt = new TextField(15);(false);for (int i = 0; i <= 16; i++) {b[i].addActionListener(new buttonlistener());//添加监听器}b[16].addActionListener(new close());(this);();(new BorderLayout());(txt, "North");(new GridLayout(4, 4));(new BorderLayout());(b[16]);(p1, "North");(p2, "Center");(p3, "South");();(true);//都是些窗中设置 添加相关组件和监听器}public void windowClosing(WindowEvent e) {(0);//退出系统}class buttonlistener implements ActionListener {//编写监听器事件 通过按键得出给果public void actionPerformed(ActionEvent e) {Button btn = (Button) ();if (() == "=") {jisuan();str = (a);(str);s = "";} else if (() == "+") {jisuan();("");s = "+";} else if (() == "-") {jisuan();("");s = "-";} else if (() == "/") {jisuan();("");s = "/";} else if (() == "*") {jisuan();("");s = "*";} else {(() + ());if (() == "归零")("");}}public void jisuan() {//编写具体计算方法if (s == "+")a += (());else if (s == "-")a -= (());else if (s == "*")a *= (());else if (s == "/")a /= (());elsea = (());}}}class close implements ActionListener {//退出public void actionPerformed(ActionEvent e) {(0);}}
127 浏览 7 回答
231 浏览 5 回答
181 浏览 9 回答
334 浏览 2 回答
161 浏览 5 回答
98 浏览 7 回答
324 浏览 3 回答
309 浏览 4 回答
345 浏览 3 回答
146 浏览 5 回答
189 浏览 3 回答
133 浏览 6 回答
118 浏览 2 回答
93 浏览 5 回答
321 浏览 2 回答