第一篇:关于《C语言程序设计》课程的教学改革与实践.
关于《C语言程序设计》课程的教学改革与实践
日期: 2010-5-12 1:24:52 浏览: 8 来源: 学海网收集整理 作者: 佚名 【摘 要】C语言是我国高校普遍开设的一门课程,本文根据实际教学经验,介绍了在C语言程序设计中进行的一些改革与实践。其中对提高学生的学习兴趣,发挥多媒体教学的优势,提高课堂生动性及学生能动性提出了一些行之有效的方法。
【关键词】C语言程序设计; 教学改革;网络多媒体教学
Abstract :C language is a course generally set up by China’s colleges and universities, this article introduced some of the reform and practice in the C programming language in accordance with the actual teaching experience.Threre are number of effective methods which can increase the students’ interest in teaching,play the advantages of multi-media teaching and improve classroom liveliness and students’activity.Key words:C language programming design;Teaching reform;Network multi-media teaching
现在计算机已普及到各行各业,深入到各级层次,而学习C语言程序设计是提高人们计算机知识水平的重要步骤。在我国高等学校教育中C语言不但成为计算机专业的必修课,而且也越来越多地成为非计算机专业的学习课程。做好该门课程的教学具有非常重要而深远的社会意义,现将我在C语言程序设计课程中教学内容、教学手段、教学方法等方面的改革与取得的教学效果与大家做一探讨。
一、仔细领会教学大纲,全面深入教材改革
教师深入分析教学大纲,在全面了解学生的数学基础知识状况的前提下,根据大纲制定好教学计划。将教材中涉及到学生未掌握的数学知识方面的例题进行更换,避免因数学知识问题形成教学障碍。
在选取教材时,要选择“精讲多练、案例应用”为主的教材。C语言程序程序设计本身比较抽象,学生在刚开始接触的时候很难理解,所以兴趣并不很大。根据这门课程的一般教学顺序,在前几周讲授的内容往往是变量、数据类型、运算符、表达式、语句、函数等定义、使用说明等。这些理论知识中概念多、难以理解和记忆,会使一些学生失去学习C语言的兴趣。为了避免这种现象的出现,应该采用“理论精讲,够用就行”的教材,教师在讲授具体程序和案例时再将涉及到的未讲知识补充讲解。通过这种讲解方法可以减少学生的学习压力,保证教学进度和教学效果。
在教学过程中,以“案例驱动,兴趣引导,自身实现”贯穿整个教学过程。以学生感兴趣的某种游戏为案例,通过用C语言编程来实现游戏的过程引起学生的兴趣,再讲解具体的C语言知识。引起学生兴趣的案例除了游戏案例外,还可以是其他学生感兴趣的内容。最后让学生自己建立一个开发项目,用所学的C语言知识来实现。这种方法避免进行枯燥的语法训练,学生不会觉得课程枯燥无味,能提高学生的学习积极性,更重要的是学生能感受到C语言的结构化编程思想,并进行一定的实际编程获取编程经验。
二、应用网络多媒体教学模式的 C语言教学
1 世纪人类社会全面进入信息化的世纪,信息技术的广泛应用将极大地改变人们的生产生活方式,教学也不例外,网络技术的应用必将改变传统的教学方式。C语言教学中重点与难点内容用FLASH软件制作成动画演示教学,能够把抽象的过程以真实的、直观的方式展现出来。把动态的图象和学生的抽象思维活动密切地结合起来,教师可以重点突出的讲解程序算法,教师演示课件时的速度、次数,以及前后顺序等都可以根据教学需要灵活地控制和改变,使得教师易于把握教学的进度。根据FLASH软件的特点,可以让学生动手控制动画的执行步骤,在观看或者参与动画的过程中加深理解C语言的执行过程。利用几何图形、色彩变化及闪烁等效果,再现程序执行过程的动态及变化过程,例如C语言课程中的汉诺塔问题、杨辉三角形问题,还有许多排序和比较的程序,能够通过动画把完整的过程演示。
在网络教学方面可以把教学内容做成课程网站。上课时讲解网站上的理论内容和相关练习题。学生可以通过计算机访问网站中每次课讲的内容,在编写程序时遇到问题可以先通过网站查找相关资料先自己解决问题。这种方式便于学生整理学习笔记,培养学生解决问题的能力。还可以在网站上布置课后作业和收取学生的作业,便于教师的作业批改。
在网络教学方面还可以采用局域网内的网络教学管理软件进行教学与指导,例如极域教学软件。这种教学软件可以在教师机上给学生做同步演示与讲课,在学生做练习时可以把学生做练习的过程用广播形式在局域网内演示给其他学生看,这样增加了互动效果、方便对学生的练习进行讲解。
三、创造条件加强学生能力的培养
学生编程能力的提高,不是听来的,不是看来的,而是练出来的。机械的练习老师布置的作业只能完成对知识的认识,还不能完成对知识的理解与运用。利用比赛、项目任务的方式给学生以压力,让学生充分动脑在短时间内提高自身运用C语言的能力。比赛能给学生一种荣誉感,能激发学生的学习主动性、创造性,可以充分展示学生的学习能力。在教学过程中,可以根据以讲完的教学内容进行专项应用比赛,也可以在学习完C语言后进行班级内、学校内的大型比赛。比赛完成后树立学习的榜样,给学生以学习动力。
在学生C语言的编程能力方面,“授之以鱼,不如授之以渔”。程序设计是一种具有创造性的工作,程序设计具有一定的抽象性,它用数学的方法去描述一些问题。一般的程序设计要建立数学模型,要进行算法设计,这样才能将实际问题的解法表达成计算机所能表达理解的形式。在教学的过程中不能单单满足于授予学生多少知识内容,而是要加强学生独立分析问题、解决问题能力的培养。因此,课堂教学要摆脱呆板、生硬的灌输,应着力于激发学生的学习兴趣,帮助学生树立正确的学习动机,培养学生的学习能力。例如以一个成熟的项目展示完整的C语言代码,向学生讲解代码中算法、建模的过程,培养学生的良好编程习惯。
四、采用综合考核法评价学生的成绩
对C语言程序设计的考试是衡量这门课教学情况与学生学习的好坏的标准,不是看学生“知不知道”,而是“会不会干”。C语言程序设计考试是一门考察学生的逻辑能力、C语言语法掌握能力、编程能力的综合考核。不能只用主观题和客观题来评价,而应当把重点放在编制程序和调试程序上。所以对学生学习成绩的评定,采用综合考核法,将平时的实践成绩与期末卷面成绩进行综合,得出本课程综合考评分。这种教学法,不但能更客观地反映学生的学习情况,同时也能促进学生学习起到很好的教学效果。
单一的考核方法并不能体现学生的学习效果和教学效果,需要用多种方式来评价。在采用上述方法后,还可以试行反复考试法。反复考试法就是当学生对自己成绩不满意,认为没有考出自己实际水平时,可以给学生一次或多次重新考试的机会。高校教学的目的并不是考试,而是培养学生的学习能力与实际动手操作能力,通过这样多方式考核的办法可以充分评价出学习的学习能力与实际动手操作能力。
五、校企结合面向社会培养学生的编程能力
为了使学生学习到的知识与社会接轨,可以创建校企结合的课程建设方法。听取企业家对C语言程序设计教学改革的意见、由企业向学校提供实验(实习)条件、以企业作为学生的校外实习基地或者企业为学生提供就业岗位,通过这些方法使学生熟悉公司内的编程环境,尽快进入工作状态。学校还可以邀请企业家为学生开讲座,派遣青年教师到企业去实习,使教学的内容与企业的实际更为贴近。学校作为企业的人才培育基地,发挥技术和设备的优势,为企业提供支持,向企业输送合格毕业生,校企结合实现双赢。
总之,在“C语言程序设计”课程中,我们要努力提高学生对课程的兴趣和学习热情,在教学手段上充分利用多媒体、网络软件等手段,使得学生充分掌握C语言的基本理论知识,同时加强学生自身的学习能力和实践能力的锻炼,使学生更好地掌握C语言程序设计方法符合现代社会对人才的要求。
【参考文献】
[1]孔垂柳.田地.基于程序设计思想的C语言教学方案.吉林大学学报(信息科学版),2005,23(8):5-6.[2]陈东.计算机多媒体教学改革的一些尝试[J].福建师范大学学报(自然版),2004,20(3):98.[3]李明等.C语言程序设计教程[M].上海:上海交通大学出版社,2007,26-32.
第二篇:《C语言程序设计(实践)》课程教学大纲.
《C语言程序设计(实践)》课程教学大纲
一、课程的性质和任务
课程性质:《C语言程序设计(实践)》是多媒体技术专业《C后续课程设计课程。
本课程的任务是:通过课程设计,为学生提供一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。提高学生实际编程的能力。
本课程教学应达到的基本要求是:利用学到的编程知识和编程技巧,通过布置具有一定难度的程序设计题目,帮助学生熟悉程序的设计、编写与调试过程。
语言程序设计》课程的二、时间安排
本课程设计时间为一周(28学时),题目提前两周布置,使学生作好准备。具体时间安排如下:
1.分析设计准备阶段(周一)
2.编程调试阶段(周二至周四)
3.总结报告和书写说明书阶段(周三至周四)4.考核阶段(周五)
三、课题内容:
提供以下备选课题: 1.图书管理信息系统 2.民航订票系统 3.标准化考试系统 4.时钟
四、组织管理: 对学生分组,每组3~6人,每组选一课题。
五、考核评估:
成绩分优、良、中、及格和不及格五等,从以下几方面考核: 1.程序设计的可用性,实用性,通用性,可扩充性(40%)2.学生的动手能力,创新精神(30%)3.总结报告(10%)4.答辩水平(20%)
主编:姚培华
主审:王富荣
第三篇:C语言程序设计教学改革总结报告.
《C语言程序设计》教学改革总结报告
《C语言程序设计》是信息工程系各专业都开设的一门非常重要的专业基础课,也是国家计算机等级考试可选编程语言之一。掌握好C语言的编程技术,将为学生学习后续高级编程语言奠定坚实基础。但C语言概念比较复杂,规则繁多,使用灵活,容易出错,学生掌握起来有一定的难度。以往授课方式为大教室合班上课,课后安排上机实验。学生反映理论内容较抽象,并与实践有些滞后脱节,给学生掌握课堂内容增加了难度。针对这种情况,我系自2007年起,对《C语言程序设计》进行了教学改革,对授课方式,考核方式,教案组织,上机考试等几方面进行了改革,并取得了非常理想的教学效果。
首先,改变了以往大教室合班上课方式,改为单班实验室授课。这种方式授课,可以使学生听懂教师所讲授的理论内容之后,马上通过上机实践,加深理解并真正掌握课堂内容,同时也提高了学生的动手编程能力。掌握编程技术的最佳方法就是自己动手编程,在实践中逐步提高水平。而这种授课方式,正好可以使理论与实践相结合,并且由于单班授课,教师可以对每名学生进行一对一辅导,这样可以使学生对课堂内容马上理解并掌握,所以教学效果良好。
其次,对考核方式进行了改革,成绩考核方法是平时成绩占30%,上机考试成绩占30%,笔试成绩占40%。这种考核方式即可以考察学生的平时表现,又可以考察学生对课程的掌握程度。既考察了理论掌握情况,也考察了学生的实践动手编程能力,客观公正。通过学生意见反馈,学生对这种考核方法也表示赞同和认可。
第三,我们针对单班实验室授课这种新的授课方式,重新编写了教案。组织教案的原则主要是理论与实践相结合,组织方式是,对于每一章节,首先介绍概念,原理,算法,语法和注意事项,然后通过适当的例题来讲解,同时组织1-2个例题,立即让学生上机实践,编写和调试程序,教师当堂辅导,所以使学生可以对课程内容当堂理解,当堂消化吸收。
第四,对以往上机考试进行了改革。以往上机考试为教师出3-4道编程题,每名学生都答一样的题,存在一些弊端。现在上机考试改为采用《C语言程序设计上机
考试系统》,系统具有自动出题、随机组卷、计时收卷、实时评分和记录成绩功能,大大提高了考试效率。每名学生的3道考题是随机产生的,与周围学
生的考题均不相同,所有考题取自国家二级考试模拟题题库,具备针对性,同时《C语言程序设计上机考试系统》具备平时练习和正式考试两种使用方式,学生平时练习时可以生成参考答案,这样学生可以在练习过程中,逐步提高编程水平。因为是实时电脑评分,所以迫使学生必须经常练习,在不知不觉中也就提高了对C语言程序设计的理解和掌握。
从成绩上分析,以2007-2008第二学期为例,我系共有314 人参加了考试,及格人数 281人,及格率89.5%,不及格人数 33人,不及格率10.5%,平均分72.3。我讲授《C语言程序设计》已有多年,据我所知以往考试的不及格率约为30%左右,平均分约为60分上下,所以教学改革后,《C语言程序设计》取得了很好的教学效果。
从学生反映上分析,学生对在机房上课及考核方式完全认可,认为既可以掌握理论知识,同时通过自己动手实践掌握编程技术,加深了对课程内容的理解和掌握。学生普遍反映能够提高动手实践能力和理论知识运用能力。
《C语言程序设计》教学改革存在的问题有以下几点,第一,现在使用的教材是清华大学出版社谭浩强编写的《C语言程序设计》,是国内权威的教材,但它在内容的组织、顺序的安排与在实验室上课有些差别,所以是否考虑针对在实验室上课这种新的授课方式,重新编写一本教材。第二,教案的内容上,还有待于进一步细化和调整,尤其是学生练习的例题,需要进一步的斟酌与挑选。第三,《C语言程序设计上机考试系统》还需要升级完善,在考题数量,难易程度,答案数量以及适用于VC++开发环境等方面,还有大量的工作需要完成。
总之,《C语言程序设计》教学改革取得了非常理想的教学效果,无论是在学生成绩的提高上,还是学生的反映上,以及考试的效率上等均达到了教学目的,但仍存在一些不足,希望院系领导能够针对存在的问题,组织人员,商讨对策,进一步提高《C语言程序设计》这门课程的教学水平。
总结人:谢进军 2007年12月
第四篇:浅谈《C语言程序设计》教学与实践
浅谈《C语言程序设计》教学与实践
为了有效改善当前C语言程序设计教学方法的诸多问题,本文提出了一种互动式和启发式教学方法,从实际出发,制定出切实可行的教学案例。通过测试结果表明,本文提出的方法在实际的教学实践中取得了良好的效果。
随着现代信息技术的发展,计算科学与信息科学相结合更加紧密,计算机编程能力已经成为非计算机专业学生的一门重要的必修课[1]。目前,许多高校都开设了《C语言程序设计》课程。由于C语言的功能强大和应用广泛,已经成为许多高校课程首选的编程语言。与其它语言相比,C语言涉及的概念更加复杂、规则更多,如果按照传统的教学方法,对于非计算机专业大多数学生来说,在规定的课堂教学时间内,较难掌握C语言的程序设计思想和方法。因此,传统的教学方法需要改革与实践。
目前,C语言教学存在的问题较多,本文归纳如下(1)计算机基础存在很大差异。目前,我国非常重视信息和计算机科学的普及教育,大多数高级中学都开设信息技术等课程,在进入高校前,大多数学生就已经掌握了一些计算机相关的基础知识。由于不列入高考范围,不同地区存在很大差异,尤其是经济欠发达地区的学生在计算机知识的掌握方面存在很大的差异;(2)教学案例。C语言涉及许多知识点,现有教材大多数都通过例子讲解每个知识点,通过例子可使学生更好的理解知识点,但问题在于往往不同知识点对应的例子不同,导致学生误认为知识点之间是孤立的,使学生无法将不同的知识点综合起来,学到最后,大多数学生会出现无法将各个知识点串联起来。因此,在教学过程中,选择合适的案例来贯通多个知识点是非常重要的;(3)学生的积极性没有得到充分调动,创新意识没有得到体现。在C语言教学中,大多数的学生都是被动的学习,被动的接受教师课堂授课。这种教学方法,不但不能真正反映教与学的相互性,也不能调动学生学习C语言的积极性,更不能提倡和培养学生的创新精神。
为了解决上述问题,本文提出了一种互动式和启发式教学方法,从实际出发,制定出切实可行的教学方法和教学案例,以程序设计的思想和方法为主线,充分调动学生学习的积极性和持续性。通过测试结果表明,本文提出的方法在实际的教学实践中取得了良好的效果。教学案例
刚开始对于学生要求不能过高,初学时,只要求看懂程序,编写简单的程序就可以了,然后逐步深入,通过长期的学习和积累就能熟练掌握C语言。对于学时有限或者基础较差的学生来说,有些较为难懂的内容可以通过选学或自学,把精力放在最基本、最常用的内容上,学好基本功。因此,案例的选择至关重要。对于案例的选择不但要有代表性,而且要有趣味性,不仅与教学内容和目的密切相关,也要能激发学生学习能动性,让学生掌握每个知识点。如果学生养成了正确的学习方式,掌握程序设计的思想和方法,便于以后学习其它编程语言,其基本规律和方法都是一样的。在传统的教学过程中,教师的思维与学生思维存在较大差异,导致学生被动的学习教师的理念,很容易将理论与实践脱离。相反,案例教学更注重激发学生学习的积极性,能够举一反三,掌握规律,引导学生解决实际问题的能力[4]。对于抽象的概念,往往使学生失去进一步学习的欲望,然而教学案例所引入的知识点,通过教师与学生之间的相互作用,共同分析和研究问题,使教师能够充分调动学生的积极性和兴趣,不会出现学生被动的学习情况。
通过这种方式,学生很容易接受各章知识点,对知识点的理解又进一步加深。学习程序设计,只要掌握程序设计的思路和方法,就能学活用活,举一反三。另外,在考虑教学案例时,我们应该根据学生的实际情况来选择案例,案例的选择不能太易,也不能太复杂,需考虑学生的接受和理解能力。因此,教学案例可提高学生的主动性、培养学生分析和解决实际问题。互动式教学方式
传统的教学方式,往往都是以教师为中心,学生是被动的接受知识,而现代教学方式偏向于主张学生参与到教学过程中[5]。教学本身具有两面“教”与“学”,两者紧密相连,教师教的过程也能总结出如何教好学生的方法。因此,教师的教学与学生的学密不可分。然而,旧的教学观念总是强调教师的教学,以为教的越多,学生学的越多,往往会忽视学生实际掌握知识的情况,甚至没弄清楚学生是如何学习的。因此,学生一直以来都处于被动状态。实际上,“教”只是外部因素,“学”才是内部因素。教师的“教”是创造学生“学”的条件,学习过程就是一种认知的过程,学生“学”的动力取决于“教”。
在C语言教学过程中,教师通过互动式教学法帮助学生回顾知识,采用回答问题方式引入新的知识,然后讨论和演示验证指导学生解决问题,最后,通过新的启发式问题引导学生进一步思考。最好这些问题从学生的背景知识中考虑,能启发学生,让学生从不同方面思考和解决问题。
编程思想和方法
如今的信息技术发展迅速,计算机编程语言层出不穷,对于学生,掌握一门编程语言至关重要,在教学48课时和实验16课时,共64课时内,很难精通一门编程语言。因此,编程语言教学应该集中在使学生掌握编程思想和方法,培养他们的逻辑思考能力。只有采取这种方式,学生今后就能以同样方式迅速的掌握其他编程语言。计算机编程语言的教学是语言学习的基础和关键环节,程序设计的关键是如何找到问题和解决问题,俗称算法。算法是程序设计的灵魂,是计算机进行操作的步骤。语法是编程的基础和程序设计的工具,培养学生编程能力,我们应该集中在算法设计和分析上。算法分析可以帮助学生开放思想,开拓新思路,归纳逻辑规律。在传统教学中,教师只要求学生看懂程序,当他们单独编写程序时,往往不知道从哪里开始[4]。
C语言程序设计课程教学要求学生掌握基本语法、申明、控制结构、基本思想和自上而下的结构化程序设计。同时,也要培养学生使用C语言解决实际问题。在讲完C语言基本知识教学时,例如数据类型和变量声明,我们可以使用三种基本结构程序设计、函数、数组和文件作为主线进行教学,这样学生就可以掌握编程的基本技能。即使不同的编程语言实现代码不同,但它们的思想和方法非常类似。当我们在C语言教学时,我们应该淡化语法教学,为了培养学生解决问题的能力应把教学的重点放在算法上。语法规则不是通过孤立的学习而是在学习编程的过程中学到的。随着编程难度的逐步提高,算法和语法的学习同步趋于深入。学生在富有创意、引人入胜的编程中,学会了算法,掌握了语法,把枯燥无味的语法规则变成生动活泼的编程应用。
结束语
通过采用本文提出的互动式和启发式教学方法考察类型题包括选择题(占总成绩的20%,涵盖整个教学大纲,下同)、填空题(10%)、编程填空题(30%)和编程题(40%)。学生最后的成绩信息表见表1。
综上所述,教学与改革不仅能够激发学生学习的动力,且能培养学生分析问题和解决问题的能力。随着信息技术的不断发展,我们应该不断的完善我们的教学模式。
第五篇:《C语言程序设计》课程教学大纲
《C语言程序设计》课程教学大纲
一、课程教学目的
本课程系统学习C语言的基本知识和基本语法,较好地训练学生解决问题的逻辑思维能力以及编程思路和技巧,使学生具有较强的利用 C 语言编写软件的能力,为培养学生有较强软件开发能力打下良好基础。
二、课程教学要求
通过本课程的学习,应熟练掌握 C 语言中的基本知识、各种语句及程序控制结构,熟练掌握 C 语言的函数、数组、指针、结构体、链表等数据结构的基本算法;并能熟练地运用 C 语言进行结构化程序设计;具有较强的程序修改调试能力;具备较强的逻辑思维能力和独立思考能力。
三、课时分配
本学科计划学时为246学时,其中理论与实训课时比例为7:3。
四、课程教学重、难点
课程教学重点:掌握C语言变量类型及不同类型常量的表示;标准的输入输出函数的使用;运算符及常用数学函数的使用;控制流程、数组和指针的使用;结构体、链表的构造使用;函数结构、函数参数传递及递归等方面的知识;基本的文件操作。难点:指针的使用、结构体链表的构造和使用及函数的参数传递。
五、课程教学方法(或手段)
本课程实践性较强,故采用讲授和上机操作相结合的方式进行教学。
六、课程教学内容 第一章 C语言概述 1.教学内容
(1)编程历史的回顾、程序设计介绍(过程式,面向对象,函数式,逻辑式);(2)C语言的历史背景、特点;(3)C语言源程序的格式和程序结构;(4)C程序的上机步骤。2.重、难点提示
(1)重点:掌握简单的 C程序格式,包括main()函数、数据说明、函数开始和结束标志等;
(2)难点:编程入门以及对语言的理解。第二章 算法 1.教学内容
(1)算法的概念及特性;评价算法优劣的方法(时间和空间);(2)简单算法举例;
(3)算法的表示(自然语言、流程图、N-S流程图);(4)结构化程序设计的基本思想及基本步骤。2.重、难点提示
(1)重点: 算法流程图三种基本结构(以后各章学习中利用流程图强化对程序的理解);
(2)难点: 算法概念以及对结构化程序设计思想的理解。第三章 数据类型、运算符与表达式 1.教学内容
(1)基本数据类型及其常量的表示法(字符和字符串常量),各种数制(八、十、十六进制)的整型数和长整型数,实型数(float和double);
(2)变量的类型说明、初始化及引用;(3)运算符与表达式: 2.重、难点提示
(1)重点: 掌握 C的几种基本数据类型,不同类型数据间的混合运算规则;不同运算符的使用特点,清楚每种运算符的优先级与结合性;各种表达式的含义与使用要点。
(1)难点:不同类型数据间的混合运算;运算符的优先级与结合性。第四章 最简单的 C 程序设计 — 顺序程序设计 1.教学内容
(1)C程序结构和语句的构成;
(2)顺序结构程序的设计:赋值语句的使用要点;(3)数据的输入与输出: 2.重、难点提示
(1)重点: 顺序结构程序的表达式语句形式; 输入/输出函数的表示与调用方法; 利用流程图加深对顺序结构程序的理解。
(2)难点: 格式输入与输出表示中各种格式字符的表示含义。
第五章 选择结构程序设计 1.教学内容
(1)关系运算符和关系表达式;(2)逻辑运算符和逻辑表达式;
(3)if语句(if;if„else„;if„else if„else„);(4)switch和break语句。2.重、难点提示
(1)重点:关系、逻辑运算符及其表达式的语法形式;掌握if语句;switch语句; 利用流程图加深对选择结构程序的理解。
(1)难点: 关系与逻辑运算符表达式的结果判定; if语句嵌套的层次判定;程序中使用break语句运行结果的判定。第六章 循环控制 1.教学内容
(1)用goto语句构成循环、for语句、while语句和do„while语句;(2)循环嵌套;
(3)break,continue语句。2.重、难点提示
(1)重点:掌握while语句与do while语句的结构,for语句的结构,其使用方法;常见的循环嵌套形式;正确区分for语句、do„while语句与while语句;break语句和continue的应用及其区别;
(2)难点:分析总结常用的程序设计方法及算法特点,并能编写相应的程序。第七章 数组 1.教学内容
⑴ 数组的含义与存储特点; ⑵ 数组的定义与使用; ⑶ 字符数组。2.重、难点提示
(1)重点:掌握一维数组、二维数组;字符数组与字符串的概念与定义方法,常用的字符串处理函数。
(2)难点:数组下标的起始数问题;利用数组形式进行程序设计的一般方法与典型算法。
第八章 函数 1.教学内容 ⑴ 函数的定义;
⑵ 函数的调用(一般调用、嵌套调用、递归调用),return语句; ⑶ 参数的传递方式:形式参数与实在参数; ⑷ 局部变量与全局变量; ⑸ 变量的动态存储与静态存储; ⑹ 内部函数与外部函数。2.重、难点提示
(1)重点: 掌握函数定义的一般形式;函数的调用的几种形式;函数嵌套调用的一般过程;数组名作为函数的参数的一些特点;局部变量与全局变量的概念及它们的使用特点。
(2)难点:不同的函数参数传递方法在程序中应用的结果判定;利用函数调用方法实现程序设计中涉及的参数定义、参数传递以及返回值问题;函数调用的理解。第九章 预处理命令 1.教学内容
⑴ 预处理的概念与特点; ⑵ 符号常数和宏的定义; ⑶ “文件包含”处理。2.重、难点提示
(1)重点:宏定义的方法;“文件包含”与预处理的应用。(2)难点:宏定义的方法。第十章 指针 1.教学内容
⑴ 指针与地址的概念;
⑵ 指针变量的定义,初始化;指针变量的引用(取地址运算符&及指针运算符*);指针变量作为函数参数的应用;
⑶ 指针与数组(数组的指针和指向数组的指针变量); ⑷ 字符串的指针和指向字符串的指针变量;
⑸ 函数的指针和指向函数的指针变量、返回指针值的指针函数; ⑹ 指针数组和指向指针的指针;
⑺ 对main()函数命令行参数的基本了解。2.重、难点提示
(1)重点:指针变量定义、初始化和引用;数组的指针和指向数组的指针变量;字符串的指针和指向字符串的指针变量;指针数组与指向指针的指针。
(2)难点:指针概念深刻理解;区别指向数组的指针和指针数组;指向指针的指针; 有关指针的数据类型定义和指针的相关运算。第十一章 结构体与共用体 1.教学内容
⑴ 定义结构体类型变量的方法;
⑵ 结构体变量的引用与结构体变量的初始化; ⑶ 结构体数组与指向结构体数据的指针; ⑷ 指向结构体类型数据的指针及用指针处理链表; ⑸ 共用体; ⑹ 枚举类型;
⑺ 用typedef定义类型。2.重、难点提示
(1)重点:掌握结构体类型变量的定义方法;结构体类型变量的引用方法;结构体类型变量如何在定义的同时初始化; 通过图示正确理解链表的概念和形态,共同体的含义、共同体类型变量的定义方法。
(2)难点:结构体与共用体概念的掌握;各种结构体结构的定义。第十二章 位运算 1.教学内容
⑴ 运算符和位运算; ⑵ 位运算举例; ⑶ 位段。2.重、难点提示
(1)重点:掌握各种位运算符,运算规则和优先级。(2)难点:各种位运算符的运算规则和优先级。第十三章 文件 1.教学内容
⑴ 文件类型指针; ⑵ 文件的打开与关闭; ⑶ 文件的读写; ⑷ 文件的定位。2.重、难点提示
(1)重点:掌握文件操作的相关标准函数;(2)难点:文件的读写和定位操作。
七、实验教学内容
实验项目(一):C 语言中控制语句的使用(1)项目类别:必做(2)项目性质:综合性(3)项目主要目的要求:
掌握各类控制语句的书写格式,能在具体问题解决时给出合适的程序控制结构;用分支结构实现程序的条件控制;用循环结构实现程序中重复执行操作的控制。(4)主要仪器:计算机(5)实验考核方法:随堂考查 实验项目(二):C 语言中数组的使用(1)项目类别:必做(2)项目性质:综合性(3)项目主要目的要求:
掌握数组这种构造类型的特点,如何用数组数据对象并对数据对象进行处理;熟练掌握一维数组的定义、引用、初始化,用一维数组来对字符进行处理;掌握二维数组的定义、引用、初始化,用二维数组实现矩阵的有关方法算法。(4)主要仪器:计算机(5)实验考核方法:随堂考查 实验项目(三):C 语言中函数的使用(1)项目类别:必做(2)项目性质:综合性(3)项目主要目的要求:
C语言中用函数来实现子功能模块,掌握系统函数的调用方法及用户自定义函数的定
义、调用方法;用自定义函数来实现一个具体问题;用自定义函数的嵌套调用来实现一个复杂问题。
(4)主要仪器:计算机(5)实验考核方法:随堂考查 实验项目(四):C 语言中指针的使用(1)项目类别:必做(2)项目性质:综合性(3)项目主要目的要求:
掌握指针变量的运用,通过指针引用数组元素的方法,函数指针变量作函数的参数;在程序中进行指针变量的运算操作,指针变量作函数的参数;数组元素的指针。(4)主要仪器:计算机(5)实验考核方法:随堂考查
实验项目(五):C 语言中结构体与链表的使用(1)项目类别:必做(2)项目性质:综合性(3)项目主要目的要求:
掌握结构体类型变量的定义和使用;结构体类型数组的概念和应用;链表的创建与使用;检共用体的概念与使用。(4)主要仪器:计算机(5)实验考核方法:随堂考查
实验项目(六):C 语言中文件的使用(1)项目类别:必做(2)项目性质:综合性(3)项目主要目的要求:
掌握文件以及缓冲文件系统、文件指针的概念;学会使用文件打开、关闭、读、写等文件操作函数;学会用缓冲文件系统对文件进行简单的操作。(4)主要仪器:计算机(5)实验考核方法:随堂考查
八、课程考核方式 1.考核方式:
闭卷考试 2.成绩构成:
平时+期末
九、选用教材和参考书目
[1]《C程序设计》(第三版),谭浩强编,清华大学出版社,2007。
[2]《数据结构—用C语言描述》(第二版),唐策善编,高等教育出版社,2004。[3]《程序设计基础与C语言》(第一版),梁力.郭晓玲.高浩编,西安电子科技大学出版社,2001。
[4]《C语言程序设计》(第二版)刘德恒编,电子工业出版社,2001。