文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 精品软件 | 下载排行 | 推荐下载 | 免费看大片 | WPS | 杀毒软件
清风网络
首 页 软件下载 网络学院 数码学院
QQ 电脑入门 游戏 操作系统 图形处理 办公软件 媒体动画 精文荟萃 工具软件 网络编程 程序开发 网络技术 认证考试 网站建设 文章专栏
当前位置:清风网络学院程序开发C/C++《C语言程序设计》教学的几点体会
精品推荐
特别推荐
·C语言编程易犯毛病集合
·C语言编程常见问题解答(目录)
·C#程序开发中的常用函数汇总
·C/C++笔试、面试题目大汇总
·Beej的网络socket编程指南
·socket编程原理
·C语言的常用库函数使用方法分析及用途
·在C语言中如何处理时间和日期
·C++设计模式之Singleton
·VC++动态链接库编程之MFC扩展 DLL
热点TOP10
·进程和线程编程
·C语言编程易犯毛病集合
·打字游戏
·Awk 基础入门:Awk 实例编程
·asp.net中调用javascript函数实现多功能日期控件示例
·C语言编程常见问题解答之常用函数的包含文件(1)
·C# GridView 排序及分页
·C #中的几个线程同步对象方法
·无废话C#设计模式之三:Abstract Factory
·C# DataGridView隔行显示不同的颜色

《C语言程序设计》教学的几点体会

日期:2008年6月11日 作者: 查看:[大字体 中字体 小字体]



  《C语言程序设计》是我系各专业的必修课程,也是我校非计算机专业开设的程序设计课程之一。作为计算机类的专业基础课,目的是使学生掌握程序设计的基本方法并逐步形成正确的程序设计思想, 能够熟练地使用C语言进行程序设计并具备调试程序的能力,为后继课程及其他程序设计课程的学习和应用打下基础。对于非计算机专业来说,该课程有实际应用价值,为用计算机解决实际问题提供了方法,是后续理论和实践教学的基础和重要工具,同时也是计算机二级考试所统一要求的课程之一。

  笔者多年来为从事高级语言程序设计教学与实习,结合国内外优秀编程语言的教学方法和模式,不断地总结和积累经验并运用于教学实践之中,取得了较好的教学效果,有助于学生在有限的教学时间内,以最快最简单易懂的方式,扎实地掌握C语言的内容,并能运用自如。

  下面是笔者在C语言教学中的一点体会,仅供大家参考。

  培养兴趣

  恩格斯说“兴趣与爱好是最好的老师”。为了使初学者能尽快地掌握计算机知识,进入计算机的应用领域,在课程讲授过程中,要特别注意培养学生的学习兴趣。初接触计算机时,很多学生感到新奇、好玩,这不能说是兴趣,只是一种好奇。随着课程的不断深入,大量的规则、定义、要求和机械的格式出现,很容易使一部分(甚至是大部分)学生产生枯燥无味的感觉。为了把学生的好奇转化为学习兴趣,授课时我们改变过去先给出定义和规则的讲授办法,而是从具体问题入手,努力把枯燥无味的“语言”讲的生动、活泼。

  在第一节课上,就给学生找一些《高等数学》、《线性代数》等已学课程的问题,用算法语言来求解,使学生体会程序设计的用途和一种全新的解决问题的方法。在课程的进行中,引导学生学一种算法,就尝试在同行课程中应用。我们还经常介绍一些趣味性算例,如: “菲波纳契兔子问题”、“水仙花数”、“竞赛记分”等,培养学生的学习兴趣,让大家积极主动、自觉独立地获取知识,打好学习程序设计语言的基础。整个教学过程中应该把解题思路、方法和步骤(即“算法”)当作授课的重点,从而让学生明白如何分析并解决实际问题,逐渐培养学生进行程序设计的正确思维模式。

  循序渐进

  绝大部分学生是第一次接受计算机语言,“通俗性、可接受性”的教学原则同样适合于这门课的教学。在课程讲授过程中,我们没有把重点放在语法规则的叙述上,而是放在算法和程序设计方法上,通常由几个例题引出一种语法规则,通过一些求解具体问题的程序来分析算法,介绍程序设计的基本方法和技巧,既注重教材的系统性、科学性,又注意易读性和启发性。从最简单的问题入手,一开始就介绍程序,要求学生编写程序,通过反复编写、运行程序来掌握语言的规定和程序设计的方法。同一个语法规则、同一种算法,在选择例题时也是由简到难,逐步呈现给学生。在学习上不要求学生死记语法规则,而是要求学生能把各个孤立的语句组织成一个有机的、好的程序。注意培养学生良好的编程风格,让学生在编制程序过程中不断总结、巩固,达到学会方法、记住语法规则,提高设计技巧的目的。

  以“菲波纳契兔子问题”为例,在基本程序设计部分,可以启发学生使用循环语句,利用变量的交替赋值实现。

main( )
{
long f1,f2;
int i;
f1=f2=1;
for(i=1;i<=20;i++)
 { printf("%12ld %12ld",f1,f2);
   if(i%2==0) printf("\n");/*控制输出,每行四个*/
   f1=f1+f2; /*前两个月加起来赋值给第三个月*/
   f2=f1+f2; /*前两个月加起来赋值给第三个月*/
 }
}
  而在数组部分,可以启发学生采用直接的数组元素赋值来解决。

main( )
{
long fib[20];
fib[1]=1;fib[2]=1;
for(i=1;i<=20;i++)
 { printf("%12ld",fib[i]);
   if(i%4==0) printf("\n");/*控制输出,每行四个*/
   fib[i+2]=fib[i]+fib[i+1]; /*前两个月加起来赋值给第三个月*/
 }
}
  这样,通过对两种解法的比较和分析,帮助学生更好地掌握循环语句和数组的概念。

  改进授课方法,实现教学相长

  我们要求学生事先预习,实际上就是要求他们课前自学,讲课时以学生预习过为起点,只讲难点、重点、有变化之处,这样既给了学生思维分析的余地,又节省课时。这就要求必须精选教学内容,注意详略安排的合理性。在章节间的授课安排也注意了详略得当。如在讲到“选择分支结构”,“循环结构”这些关键性章节时就讲的特别精,使学生做到非常熟练、透彻掌握的程度,而讲到“字符处理”章节时,让学生做到一般了解即可。课上经常找一些设计技巧比较好、解题思路比较精的例题让学生自己“读程序”,找出精妙之处或不理解之处,对普遍性的问题共同讲解,个别问题课后解答。

  我们有意地设置一些不同深浅的笔误或口误,马上让学生肯定对与错,以考查学生注意力集中的程度,提高他们的敏锐性和判别能力。对有些问题,给出一种程序设计方法后,让学生讨论,还有没有其它的程序设计方法和思路,让他们发表意见,提出自己的解题思路编程方法,给学生以表达已见、陈述思路、交流观点的机会。这就要求老师既有引导又能放开,既有事先的精心备课,又有课堂上的因势利导,同时也可以从学生讨论中提出的问题来丰富教材内容,受到较好的教学相长的效果。

  如讲授printf和puts对字符串的处理,我们采用下面的例子进行学习:

#define N 6

[1] [2] 下一页 




上一篇:奇技淫巧C++之返回值重载

下一篇:More Effective C++之引用计数

相关文章:
·女性必看!太经典了,我深有体会
·经典爱情语言
·网站优化需要重要注意的几点事项
·业务员打死也不能说的9类语言
·菜鸟必学的4种后门技术知识
·C语言编程易犯毛病集合
·2007年十大网络语言排行榜
·Visual Basic通信程序设计
·个人网站做联盟广告的几点经验
·网管员在日常维护局域网时的几点注意事项
相关软件:
·C语言程序设计
·经典 C++语言教程
·Windows环境下32位汇编语言程序设计
·硅谷 C++程序设计视频教程 齐幼菊
·汇编语言入门教程PPT
·C语言程序设计视频教程 CSF 教材:谭浩强《c程序设计》
·系列语言网页设计
·Matlab程序设计
·虾(C)语言实例教程 V1.75
·我的哲学的发展

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.vipcn.net
| 帮助(?) | 版权声明 | 友情连接 | 关于我们 | 信息发布
Copyright 2007 www.vipcn.net All Rights Reserved. 鄂ICP备05000083号Powered by:viphot