您现在的位置: 论文网 >> 教育论文 >> 学科教育论文 >> 基于C语言中循环结构教学的讨论论文

基于C语言中循环结构教学的讨论

出处:论文网
时间:2017-01-11

基于C语言中循环结构教学的讨论

  1. 前言

  顺序结构、选择结构、循环结构是结构化程序设计的三种基本结构,结构化程序设计的基本思想是任何程序都可以用顺序结构、选择结构、循环结构这三种基本结构来表示。因此在《C语言程序设计》课程中,掌握这三种基本程序结构对进行程序设计是非常重要的。而循环结构是这三种结构中最复杂的一种结构,几乎所有的结构化程序都离不开循环结构。在C语言中,可以实现循环结构的语句主要有for、while和do-while三种语句,其中for语句是整个C语言教学内容中的重点内容之一,功能最为强大,同时也是学生掌握和运用难度较大的一种语句。

  2. 如何设计引例

  据引英文原版教材将循环描述为:repeatation,重复,在《辞海》中循环被解释为:事物周而复始的运动或变化。可看出,循环实际上就是重复的过程。

  2.1 运用实例解释循环思想

  教师在教学过程中的“教”和学生的“学”是取得较好的教学效果,达到教学目标的重要途径,教师怎么“教”和引导学生如何“学”是教师在教学设计环节要思考的问题。引用实例在课堂的教学设计环节是非常重要的,一个好的引例能把抽象问题简单化、具体化,可以使学生感兴趣,有利于学生的理解掌握。在讲解循环结构时,就可利用现实生活中的具体实例来说明什么是循环以及为什么要研究循环。例如:学生在学校里每天都要经从寝室出发到食堂就餐再到教室上课,这样三点一线的重复生活,直到学校放假,这样重复的生活才各一段落;运动员要跑3000米,需要沿着400米的操场跑道重复跑7圈半才能跑完全程。这些例子的共同点都在于:它们存在重复性的动作,这些重复性的动作就是循环。

  2.2 编程中的循环问题

  在引入实例后,我们可提出问题:在程序设计中是否有类似的重复相同的动作出现?如果存在,我们又如何用程序实现?利用最简单的输出“*”的例子,同学们利用学过的知识很快能写出程序:

  #include

  main()

  {

  printf(“*”);

  }

  若改成:输出20个“*”。同样,学生可以利用上面的方法实现:

  #include

  main()

  {

  printf(“*”);

  printf(“*”);

  ……

  }

  很显然,虽然程序结果可以实现,但是麻烦费时且程序复杂。要如何改进呢?将程序改为循环结构,使同一事物具有相同操作的部分用循环语句实现,就可以减少程序的复杂性,提高运行效率。

  3.实例问题的解决

  掌握for循环语句的格式、执行流程和功能,对于学习for循环并编写程序是非常重要的。在多年的教学过程中,笔者发现学生对for循环语句的结构和用法较容易掌握。但在实际应用中,学生分析和解决问题的能力较薄弱。因此,讲解的重点就放在应用上。根据知识点的特点,将教学内容由易到难,从浅入深分为3个层次讲解。

  3.1 for循环语句的一般格式和执行流程

  (1)for循环语句的一般格式:

  for([表达式1];[表达式2];[表达式3])

  语句组;

  表达式1:给循环控制变量赋初值,指定循环的起点;

  表达式2:循环条件,它决定什么时候退出循环;

  表达式3:循环变量增值,规定循环控制变量每执行一次循环后按什么方式变化。

  这3个表达式之间用“;”隔开。

  因此,for循环语句可直观地描述为:

  for([循环变量赋初值];[循环继续条件];[循环变量增值])

  语句组;

  (2)for循环语句的执行过程

  求解“循环变量赋初值”表达式。

  求解“循环继续条件”表达式。如果其值非0,执行;否则,转向。

  执行循环体语句组,并求解“循环变量增值”表达式,然后转向。

  执行for语句的下一条语句。

  可以将for语句的执行过程简化为四要素格式,见图1:

  在介绍了for语句的格式和执行过程后,采用案例教学法和任务驱动教学法,将刚才的例子,用for语句实现。程序段如下:

  int i;

  for(i=0;i<20;i++)

  printf(“*”);

  3.2 for循环语句灵活的语句格式

  for循环语句灵活的语句格式是学习for语句格式的重点内容,结合实例进行“举一反三”,使学生提高对重点知识点学习。

  for语句一般格式:for([循环变量赋初值];[循环继续条件];[循环变量增值])

  语句组;

  其中:“循环变量赋初值”、“循环继续条件”、“循环变量增值”部分均可缺省,甚至全部缺省,但分号不能省略。“循环变量赋初值”表达式可以是逗号表达式,也可以是其他表达式。

  举例:求“1+2+3+……+100”的和,采用for语句的一般格式,程序段如下:   int n,sum=0;

  for(n=1;n<=100;n++)

  sum+=n;

  采用for语句的灵活格式,程序段分别修改如下:

  n=1; n=1;

  for( ;n<=100;n++) for( ; ; )

  sum+=n; { sum+=n;if(n==100)

  break;

  程序段a:“循环变量初始化”缺省 n++;}

  程序段b:“循环变量初始化”、“循

  环条件”、“循环变量增值”均缺省

  经过分析得出结论:两种格式的程序段运行结果等价。

  3.3 for循环语句的实际运用

  运用for循环语句解决实际问题是学习的最终目标,教师应结合具体实例,讲解算法。在教学过程中通过解决一个实际问题:输出几何图形。我们应首先分析图形的构成,找出其中的规律:如图2(a)的图形可以分解为(b)(c)两部分。从图2可以看出,三角形(b)(c)的每一行是由若干个星号、一个回车换行符和若干个空格构成,将星号数、行号、空格数和分别设为k、i、j,则可以形成下表:

  分析表1,可以得出图2(b)的星号数k、行号i、空格数j之间的关系: j=3-i,k=2*i+1

  分析表2,可以得出图2(c)星号数k、行号i、空格数j之间的关系:j=i+1,k=5-2*i

  则图2(b)三角形可以表示为:第i行由(3-i)个空格和(2*i+1)个星号和1个回车换行符构成。因此,输出图2(b)三角形的主要程序段a:

  4.实现循环结构程序的要点

  设计循环结构程序要根据具体的问题,确定三方面的内容:循环前的准备。包括确定循环变量、循环初值、循环结束条件。选择合适的循环变量――使程序结构简洁;循环体语句――哪些操作需要重复执行;循环结束条件――重复操作何时结束。在实际应用时,可以根据具体问题的需要,选择相应的循环语句进行设计程序。

  5.结束语

  以上内容是本人在教学过程中的一些体会,希望可以对初学者学习循环结构及for循环语句有所帮助,为学好《C语言程序设计》课程打下基础。

基于C语言中循环结构教学的讨论

论文搜索
关键字:循环 基于 语言 结构 教学
最新学科教育论文
试论如何在初中地理教学中有效整合信息技术
试论初中地理教学中乡土地理课程资源利用
软件工程专业“计算机网络”课程实验教学研
“赛教学训”四位一体化的物联网工程专业人
浅议幼儿美术趣味教学及创新能力的培养
如何利用奥尔夫音乐教学法培养幼儿的创造力
解读体育游戏在初中体育教学中的应用及影响
如何在美术教学中营造快乐的氛围
微积分慕课教学资源与应对策略探究
浅析在德育课教学中如何灌输团队观念
热门学科教育论文
浅谈语文教学中学生创造力的培养
变“教师教,学生学”为“教师教学生学”
素质教育与小学语文教学
小学“语文综合性学习”实践初探
素质教育和小学语文教学改革
现代体育课堂教学重在创新
浅谈《体育课程标准》与体育教师观念的转变
电教手段优化体育教学
陶行知健身思想研究
简论现代游泳技术与训练的发展方向