C语言循环结构的教学设计探析
- 格式:doc
- 大小:24.00 KB
- 文档页数:5
浅谈C语言中循环结构程序设计
循环结构是C语言中非常重要的一种程序设计结构,可以让程序重复执行一段代码,从而实现重复性的任务。
循环结构能够简化代码的编写,提高程序的效率,可以满足很多实际问题的需求。
C语言中的循环结构有三种形式:for循环、while循环和do-while循环。
for循环是最常用的一种循环结构。
它包含三个部分:初始化、条件和更新。
循环开始前会执行初始化语句,然后判断条件是否满足,如果满足,则执行循环体中的代码,然后执行更新操作,再次判断条件,以此类推。
我们可以使用for循环来实现1到10的累加:
```c
int sum = 0;
for (int i = 1; i <= 10; i++) {
sum += i;
}
```
do-while循环也是一种常用的循环结构。
它和while循环的主要区别在于,do-while 循环会先执行一次循环体中的代码,然后再判断条件。
我们可以使用do-while循环来实现输出1到10的数字:
循环结构在程序设计中的应用非常广泛。
可以使用循环结构来实现求阶乘、查找最大值、计算平均值等常见的数学问题;还可以使用循环结构来读取文件、处理数组等需要重复执行的任务。
在循环结构的程序设计中,有几个要点需要注意。
首先是循环变量的初始化,确保循环变量的初值是正确的;其次是循环条件的判断,可以使用比较运算符、逻辑运算符等表达式来判断条件是否满足;最后是循环体的更新操作,确保循环变量的更新是合理的。
C 语言较为基础的计算机程序设计语言,它具有汇编语言和高级语言的特点,经过长期的发展C 语言先后应用在小、中、大等微型机上,它不但可以当做工作系统设计语言,可以当做应用程序设计语言.由于其具有强大的数据处理能力,因此被广泛应用在程序开发和各类科研项目中.C 语言程序设计结构主要包括顺序、分支和循环结构,而循环结构是这三种结构中最为复杂的一种,且在程序设计中使用频率较高,因此应注重这种结构的教学方法探讨,争取让学生们能够尽快的理解和掌握.1C 语言知识1.1C 语言循环结构循环结构能够减少程序员重复书写代码的工作量,用来描述重复执行某段算法的问题,能够充分利用计算机运算速度快的优点解决实际问题.C 语言的循环结构主要有两个语句组成:条件判断语句和向回转向语句.循环结构有三个基本要素组成:循环变量、循环体和循环终止条件.1.2C 语言循环语句C 语言中需要提供四类循环控制语句:for 循环、do...while 循环、while 循环和goto 循环.一般而言这四种循环控制语句可以处理同一个问题,但是goto 循环语句执行过程中容易出现未知的错误,导致程序的稳定性差,因此在日常教学实践中应将前三种循环控制语句当做授课的重要内容进行讲解.教授前三种循环控制语句时,应通过理论和具体事例让学生明白它们之间的异同.使用三种语句编写程序解决同一个问题,以此让学生们充分了解三种循环控制语句的本质为C 语言的进一步学习奠定坚实的基础.2循环结构教训方法探讨2.1明确教学重点,引入实例自然要使学生能够充分理解和掌握C 语言循环结构,教师教学前应对知识的重点和难点内容做个充分的判断,加强教学的针对性以此提高教学效率.教师应首先从理论角度入手讲解C 语言循环结构的基本知识,让学生对循环有个基本的认识,并将for 循环、while 循环和do...while 循环当做教学的重点内容进行讲解.对初学者来讲循环结构刚开始不容易掌握,很容易失去对C 语言的学习兴趣.为了避免这种情况的发生教师在教学活动实践中,可以自然地引入实例,激发学生们学习的热情.例如教师可以向学生们展示图一所示的精美三角图案,然后问学生们怎样编写C 语言程序.这时很多学生会使用较为传统的方法逐行打出图形,但是编写的代码量较多,工作量大容易出错,然后教师很自然的引出C 语言中for 循环的使用方法.并在黑板或者计算机上展示出下面代码:Vol.30No.2Feb.2014赤峰学院学报(自然科学版)Journal of Chifeng University (Natural S cience Edition )第30卷第2期(上)2014年2月C 语言中循环结构的教学方法探析丁秀琴(集宁师范学院计算机系,内蒙古乌兰察布012000)摘要:循环结构是结构化程序设计中三种基本结构之一,在程序设计中发挥不可替代的作用.对于初学者来讲循环结构是较难理解和掌握的知识点,本文对C 语言知识进行阐述,探讨C 语言循环结构的教学方法,以期为C 语言的教学提供参考.关键词:C 语言;循环结构;教学方法中图分类号:TP312文献标识码:A文章编号:1673-260X (2014)02-0022-03*************************图1C 语言编程打印的三角形图案22--. All Rights Reserved.m ain(){int i,m,nfor(i=1;i<=5;i++){/*用于输出每行的空格数(5-i)*/for(m=1;m<=5;m++)printf("");/*用于输出每行的星号(2*i-1)*/for(n=1;n<=2*i-1;n++)printf("*");printf("\n");}}这样一来能够很自然的调动学生学习的热情,激发学生的学习兴趣.2.2突出教学重点和分散难点的方法教师在教学活动实践中突出难点的同时应学会分散难点,从而降低学生学习中的困难,为学生们主动学习奠定基础,具体可以从以下三个方面入手:(1)从实际问题的重复性出发.教师精心设计实例,从日常生活中容易看到和理解的问题入手,提出较为实际的切入点,然后在教师的引导下,让学生自己动脑归纳重复行为,以达到理解和掌握循环结构的主要特点.在整个课堂上教师应明确学生才是学习的主体,而教师只是扮演主导角色.在循环结构设计时应牢牢把握程序设计的主要思想即从上到下,逐步求精,突出学习的重点并将其分散,达到让学习容易理解和接受的目的. (2)教师在教授难点知识时应安排好过渡环节,在讲授C语言基础内容时可以适当的安排循环程序,不过先不要将其功能,为讲解现在的内容做好铺垫,这样能够使学生掌握基础知识的同时,对学习本节内容有心理准备,这种循序渐进式的教学方法,可以达到提高教学质量的目的. (3)在循环程序设计应用时,教师应在学生对基本知识了解的基础上再进行更为复杂程序的扩展,逐层深入,使学生对C语言程序设计有更全面的认识.讲解重点知识时教师应在黑板上板书清楚,同时可以进行适当的提问,一方面让学生参与到教学活动中去,能够达到活跃教学气氛的目的.另一方面通过提问教师了解学生们对C语言循环结构掌握和理解情况.当写出程序后教师让学生放到实际环境中运行,并针对出现的问题让学生们自己分析,并进行调试,直到程序运行稳定.这个环节非常重要,在查错纠错的过程中学生对循环结构的理解会得到显著的提高.2.3认真设计和组织教学过程2.3.1提出问题C语言循环结构的学习主要包括两方面内容:循环结构程序设计的算法表示和用C语言将循环结构表示出来.由于该内容是C语言学习的重、难点内容,因此教师应准确把握循环学习的引入问题.比如教师可以在课堂上提出计算10的阶乘这个简单的问题.这时学生们会利用之前学习的知识能够轻而易举的解决,但是如果计算n的阶乘用之前学习的顺序和选择结构就很难解决,以此引入循环结构学习的必要性,这样就能轻松的引入循环结构的学习,引入时教师应结合多种教学手法,调动学生们学习的积极性和热情.2.3.2解决问题和讲解新知识当教师通过提出问题引入循环后,应首先分析使用循环结构计算n阶乘的自然语言和流程图.其次,解决这类问题时C语言提供了较为常用的三种结构,教师可以根据需要选择不同的循环控制语句进行演示.最后,讲解不同循环控制语句的作用,让学生自己体会不同语句的区别.为了进一步提高教学效率,教师除了运用传统的教学手法外还可以选择以下方法,以达到让学生尽快掌握循环结构的目的.(1)教师在课堂上应充分发挥自己的主导作用,注重从不同角度去启发学生,调动学生们主动学习的热情,从而能够主动的去分析问题和解决问题.(2)灵活运用各种驱动式教学方式,按照提出问题、分析问题、解决问题的思路,让学生紧跟教师教学步伐,逐步实现教学目标.(3)加强学习和研究国外教学方法,教学活动实践中注重国际上常用的解析教学方法. (4)培养学生实际解决问题的能力,让学生将编写的程序在实际的环境中运行,并善于分析运行中出现的错误,从而主动的寻找解决问题的方法,这样不但能够巩固好之前所需知识,还能进一步加深学生对循环结构的理解.(5)注重利用现代科技手段,增强学生对循环23--. All Rights Reserved.结构重难点知识的理解,提高教学效率.注重板书和投影仪结合教学方式的运用,尤其是分析过程,应进行详细的板书让学生能够充分的了解和学习循环结构的思维过程.3注重循环结构数组中的教学执行循环结构的本质是对数据的判断和操作,利用循环结构操作数组是现实中遇到的常见问题,因此,教师在学生充分理解循环结构的基础上,应适当扩展循环结构操作数组知识的讲解,从而使学生形成一个完整的C语言知识系统框架.数组和基本数字之间的区别是操作数组应控制好其下标,对于初学者来讲运用循环结构编写的语句运行时经常出现下标越界的情况,出现这种情况的原因是学生没有很好的将循环结构和数组知识联系起来.因此教师在教学过程中应注意利用循环结构操作单一数据到数组的过度,让学生自己比较两者的区别.比如,学生用C语言编写打印数组语句时经常写成下面的形式:printf(“%d”,a[0]);printf(“%d”,a[1]);printf(“%d”,a[2]);printf(“%d”,a[3]);printf(“%d”,a[4]);教师在教学过程中应让学生观察这些语句的区别,不难发现这些语句的不同之处在于数据下标,这个时候教师可以引导学生去思考,能否使用for循环语句中的变量i来代替下标的变化呢?让学生自己进行思考,并让部分学生将思考的问题板书在黑板上,最后教师将最终的结果板书在黑板上,以此达到利用循环结构操作数组目的自然过渡,结果如下:for(i=0;i<4;i++)printf(“%d”,a[i]);当学生对循环结构在一维数组中应用充分理解后,教师可以在此基础上进行延伸,可以提出怎样利用循环结构操作二维数组这样的问题.例如下面C语言打印语句printf(“%d”,a[0][0]);printf(“%d”,a[0][1]);printf(“%d”,a[0][2]);printf(“%d”,a[1][0]);printf(“%d”,a[1][1]);printf(“%d”,a[1][2]);根据之前所学的内容教师应留下充足的时间,让学生根据之前所学的内容使用for循环进行改写并板书在黑板上,不少学生会写下如下代码: for(j=0;j<3;j++)printf(“%d”;a[0][j]);for(j=0;j<3;j++)printf(“%d”;a[1][j]);根据程序规范要求教师应进行进一步的引导,比如怎样将上述代码进一步的改写呢?让学生进行讨论,以此激发学生们主动思考的兴趣,最后教师将最终结果板书在黑板上,结果如下:for(i=0;i<2;i++)for(j=0;j<3;j++)printf(“%d”;a[i][j]);通过采用这种循序渐进的教学方法,使各个重点知识过度自然,环环相扣即能让学生们容易接受,又能激发学生们学习C语言循环结构的热情,从而显著提高课堂教学效率.4总结学以致用是学习知识的目的,教师在探索C 语言循环结构教学方法时,应从激发学生们的学习兴趣入手,把握C语言循环结构的难点、重点内容,运用多种教学方法,通过具体事例让学生们对C语言循环结构有充分的了解,并在此基础上进行扩展,注重循环结构在数组操作上的应用,从而为学生深层次的学习C语言知识奠定基础.———————————————————参考文献:〔1〕庞燕芳.对C语言中循环结构的教学方法研究[J].电脑知识与技术,2009(05).〔2〕孙明月.对C语言中循环结构的认识[J].考试周刊,2009(01).〔3〕付丹丹.浅析C语言在教学中循环结构的方法[J].科技风,2008(11).〔4〕马宪敏,于延.C语言中循环结构的教学设计探讨[J].计算机教育,2011(05).24--. All Rights Reserved.。
摘要:循环结构是结构化程序设计中的三种基本结构之一,也是程序设计的基础。
但对于初学者来说,由于循环结构与我们平常的思维方式不同,因此较难掌握。
在学习这一部分时,学生往往会感觉到自己编写循环程序无从入手。
本文结合实例阐述了在《c语言程序设计》课程中循环结构的教学方法,这些方法在日常授课中取得了良好的效果。
关键词:c语言;程序设计;循环1. 前言2. 如何设计引例英文原版教材,循环是这样描述的:repeatation,重复。
《辞海》上说循环是指事物周而复始的运动或变化。
由这两个定义可以看出,循环重在强调重复。
2.1 运用实例解释循环思想在一堂课的设计过程中,引例的作用至关重要。
一个好的引例能把抽象问题简单化、具体化,有利于学生理解掌握。
在学习循环结构时可先利用现实生活中的一些具体实例来说明什么是循环以及为什么要研究循环。
例如:春夏秋冬四季的更替,汽车内燃机的作功过程:进气——压缩——燃烧——排气,叉车装货、运货、卸货的过程。
3个例子的共性在于,它们都是周而复始的、重复的运动,为了研究问题本质,只要找出规律,将重复频率高的相同部分作为重点进行突破,可以为我们的研究节省时间,提高工作效率。
比如,我们要提高发动机效率,并不需要要研究千次、万次的燃烧过程,只要从研究一次进气、压缩、燃烧、排气一个周期入手;再如运输问题,我们可以通过一次往返运输过程的研究,明确该从哪些环节下手实现安全、快捷、节能等问题。
2.2 编程中的循环问题现在我们可以提出一个问题:在计算机程序设计的世界里是否也有类似的这种相同操作重复出现的问题呢?我们又当如何提高程序设计的工作效率呢?利用最简单累加求和的例子。
例:求1+2+3+4+5+…+10的和。
利用所学知识学生很快能写出这个问题的程序:#include<stdio.h&main(){int s;s=1+2+3+4+5+6+7+8+9+10;printf(〝%d〞,s);}接下来把题目改成:求1+2+3+4+5+…+100的和。
C语言循环结构教学方法探讨C语言是高职院校计算机专业与非计算机专业讲授程序设计课程的首选语言。
C语言的重要性有目共睹,其应用也是包罗万象。
它集汇编语言和高级语言优点于一身,向下可以做系统设计语言开发底层的嵌入式,向上可以做应用程序设计语言开发应用程序。
C语言是一种结构化的高级语言,循环结构是3种结构中最为复杂,又最为常见的。
如果学生没有掌握好循环,那么学好后续的数组、指针、函数等的知识点便是空中楼阁。
因此应注重Z_--结构的教学方法探讨,力争让学生较好较快地理解和掌握。
1.当前C语言循环结构课堂教学中的问题1.1思维方式的跳跃C语言有3种基本结构:顺序结构、选择结构、循环结构。
在这3种结构中,顺序结构和选择结构十分接近人类的日常思维方式,因而也较容易被理解和掌握。
但是循环结构与人类的自然思维却不尽相同。
所以若在教学过程中按部就班、照本宣科,必然出现思维方式跳跃带来的知识掌握的滞后性。
机械的记忆语法知识、临摹式的上机调试课本实例使得越来越多的学生对C语言失去兴趣。
学生的学习呈现被动状态,学习积极性不高,甚至产生排斥心理。
因此C语言循环结构课堂教学亟待解决的问题之_就是如何缓冲思维方式的跳跃。
能够让学生在轻松自由的认知过程中掌握循环结构的使用,同时这也是激发学生学习积极性的至关重要的一点。
1.2教材教法的禁锢C语言的教材充栋折轴,其中也不乏有经典教材,然而这也导致了很多学校与教师认为讲授必选经典教材。
但是,教育教学讲究灵活多变、因材施教。
经典教材固然为C语言的教学做出了巨大的贡献,但是其编写模式与所举实例却不利于引发学生的学习兴趣。
目前,关于C语言循环结构的教学方法及其相关的教学研究等得到了较多的关注,同时也诞生了不少好的教学方法。
其中实例教学法就是其中出色的一种。
沿用实例教学法的教材也层出不穷,教师在讲解循环结构章节中采用实例法也是明智之选。
然而,实例教学法精髓在于精选实例,如果实例取之不精,不仅不能发挥其应有的效用,相反还会给教学带来很大的负面影响,实例取之不当不仅破坏了知识的系统性,甚至会使学生成为“实例操作员”,机械的上机练习,也会影响课堂的教学效果。
基于C语言中循环结构教学的讨论【摘要】本文主要讨论了基于C语言中循环结构的教学内容。
首先介绍了循环结构在C语言中的基本概念,包括for循环、while循环和do-while循环的应用与示例。
接着对这三种循环结构进行比较与选择。
在提出了循环结构教学的策略和方法,探讨了循环结构在编程中的应用前景,以及基于C语言中循环结构教学的启示。
通过本文的研究,读者可以更好地理解C语言中循环结构的重要性,并掌握循环结构的应用方法,为日后的编程学习奠定基础。
【关键词】C语言, 循环结构, for循环, while循环, do-while循环, 编程, 教学, 策略, 方法, 应用前景, 启示1. 引言1.1 C语言中循环结构的重要性C语言中循环结构是程序设计中非常重要的概念之一。
循环结构可以让程序在满足一定条件的情况下重复执行特定的代码段,这极大地提高了程序的效率和灵活性。
通过循环结构,程序员可以避免重复编写大量相似的代码,同时也能更容易地实现对数据的处理和操作。
在实际编程中,循环结构被广泛应用于处理重复性任务,比如对数组的遍历、数据的处理和计算等。
循环结构还可以用于实现程序的交互性,实现用户输入的循环检测和程序的反馈。
掌握循环结构是每一个C语言程序员必备的基础技能。
C语言中循环结构的重要性体现在它可以提高程序的效率、灵活性和可维护性。
熟练掌握循环结构不仅有助于程序员更好地编写程序,还可以使程序具有更强的逻辑性和可读性。
深入理解和掌握C语言中循环结构对于提升程序设计能力和解决实际问题具有重要意义。
1.2 本文的研究目的和意义本文的研究目的和意义在于深入探讨C语言中循环结构的重要性以及其在编程中的应用。
通过对循环结构的基本概念进行讲解,以及for循环、while循环和do-while循环的具体应用与示例进行分析,读者能够更加深入地理解循环结构在程序设计中的作用和优势。
通过比较不同类型的循环结构,读者可以更好地选择适合自己程序需求的循环方式。
《《C语言程序设计》中While循环语句教学设计探讨》摘要:要:C语言是国内外广泛使用的一种计算机语言,其中程序设计中循环结构while循环,是循环的开始篇,while循环,接着创设头脑风暴主题,如生活中的循环现象举例、《西游记》三打白骨精情节,《明日边缘》阿汤哥的生死轮回故事摘要:C语言是国内外广泛使用的一种计算机语言,其中程序设计中循环结构while循环,是循环的开始篇。
本文针对所授班级学生的实际情况,具体阐述while循环语句的教学设计,使学生理解while循环语句的格式、功能和特点及其在具体编程时的灵活应用。
关键词:C语言程序设计循环语句 while循环在实际教学过程中,我根据自己所授的班级的学习情况,他们厌学理论知识,而乐意学习操作,他们在实际解决问题方法有所欠缺。
本人从教学设计、教学实施、教学评价、教学反思等方面对《C语言程序设计》课程进行了改革,从而进一步培养学生学习兴趣,培养学生分析与解决问题的能力,培养学生的软件开发思维逻辑能力。
一、教学设计任务描述:编写程序,通过键盘输入所有学生的成绩score,通过选择结构语句的处理,输出相应的等级grade,分别统计及格人数c1和不及格人数c2,并输出。
首先带领全班同学一起读程序任务,根据程序任务进行分解,调试并运行代码,给学生一个直观感受。
让学生了解到了一边从键盘上输入合法数据,一边输出分数及相应等级。
当输入的分数不在有效范围内时,退出循环,输出及格人数和不及格人数。
(一)教材分析本课程采用的是北京邮电大学出版“十三五”规划教材,“互联网+”创新型教材,《C语言程序设计案例教程》,选取的知识点是,模块5循环结构程序设计中的while语句。
(二)学情分析1.学生对专业已有初步认识,具有一定计算机基础,已学会并掌握了C语言中的顺序结构、选择结构。
2.学生能够非常熟练地使用云班课、微弹幕、微信、C语言编译器等软件,与老师进行沟通交流。
3.学生能较熟练的进行小组合作、小组互评、展示等教学活动。
C语言循环结构的教学设计探析1 用循环结构输出几何图形通过C语言输出实心三角图形如图1所示:以上图形可以通过若干条printf输出语句完成,但是这只是简单的输出语句完成的图形,这与教师教学的项目要求不同,此图形的教学目的是通过图形的输出使学生灵活的掌握图形的构成与规律,通过循环结构的形式完成图形的输出。
例如图1中的(a)图形,其是以*号组成的实心三角形,在第一行的输出中是由一个*号和若干个空格组成,经过回车换行;第二行的输出是由三个连续的*号和若干个空格组成,经过回车换行后;第三行的输出是由5个连续的*号和若干个空格组成,经过回车换行后;第四行的输出是由7个连续的*号和若干个空格组成,经过回车换行后;第五行的输出是由7个连续的*号和若干个空格组成。
如果将号、空格数和*号数分别设为i、m和n,建立关系表如表1所示:通过上表1,观察行号i与空格数m、星号数n之间的数学关系为:m=5-i,n=2×i-1实心三角形的构成规律通过语言可以描述为,在第i行是由(5-i)个空格、(2×i-1)个星号和一个回车符组合而成。
如果将行号i作为for 语句的循环变量,则输出图形程序段为:for(i=1;i<=5;i++)/*输出(5-i)个空格;*/for(m=1;m<=5-i;m++)printf(“”);/*输出(2*i-1)个星号;*/for(n=1;n<=2*i-1;n++)printf(“*”);/*输出回车符;*/printf(“\n”);采用上面的方法,可以使学生很容易编写出类似的程序,其中的关键在于让学生找出图形中行号与每一行的空格数以及星号数的关系(对于图1(b)、(c)需要把图形分成几个部分,从而能够分析出他们之间构成的规律)。
2 数组中循环结构的应用在C语言中数组循环结构常用for语句对数组元素进行赋值、输入、输出,我们在写程序时,首先想到的就是顺序结构,如图2中左边所列举的编写形式,这种程序的编写方法较为复杂,通过观察可以看出左边程序中只有数组的下标不同,针对这一关系可以将左边的语句通过for语句建立循环结构,如右边程序,将数组的下标换成for语句的循环变量i,对i进行赋值,从0到4。
C语言循环结构的教学设计探析摘要:c语言循环结构设计是程序设计的基础,其也是结构化程序设计中三种基本结构中最为基本的结构之一。
目的是为了能够提高教师在c语言循环结构的教学中能取得较好的教学效果,使学生更加容易理解和掌握。
关键词:c语言;结构化程序设计;循环结构;效率
中图分类号:tp312.1-4 文献标识码:a 文章编号:1007-9599 (2012) 17-0000-02
1 用循环结构输出几何图形
通过c语言输出实心三角图形如图1所示:
以上图形可以通过若干条printf输出语句完成,但是这只是简单的输出语句完成的图形,这与教师教学的项目要求不同,此图形的教学目的是通过图形的输出使学生灵活的掌握图形的构成与规律,通过循环结构的形式完成图形的输出。
例如图1中的(a)图形,其是以*号组成的实心三角形,在第一行的输出中是由一个*号和若干个空格组成,经过回车换行;第二行的输出是由三个连续的*号和若干个空格组成,经过回车换行后;第三行的输出是由5个连续的*号和若干个空格组成,经过回车换行后;第四行的输出是由7个连续的*号和若干个空格组成,经过回车换行后;第五行的输出是由7个连续的*号和若干个空格组成。
如果将号、空格数和*号数分别设为i、m和n,建立关系表如表1所示:
通过上表1,观察行号i与空格数m、星号数n之间的数学关系为:
m=5-i,n=2×i-1
实心三角形的构成规律通过语言可以描述为,在第i行是由(5-i)个空格、(2×i-1)个星号和一个回车符组合而成。
如果将行号i作为for语句的循环变量,则输出图形程序段为:for(i=1;i<=5;i++)
{
/*输出(5-i)个空格;*/
for(m=1;m<=5-i;m++)
printf(“”);
/*输出(2*i-1)个星号;*/
for(n=1;n<=2*i-1;n++)
printf(“*”);
/*输出回车符;*/
printf(“\n”);
}
采用上面的方法,可以使学生很容易编写出类似的程序,其中的关键在于让学生找出图形中行号与每一行的空格数以及星号数的关系(对于图1(b)、(c)需要把图形分成几个部分,从而能够分析出他们之间构成的规律)。
2 数组中循环结构的应用
在c语言中数组循环结构常用for语句对数组元素进行赋值、输入、输出,我们在写程序时,首先想到的就是顺序结构,如图2中左边所列举的编写形式,这种程序的编写方法较为复杂,通过观察可以看出左边程序中只有数组的下标不同,针对这一关系可以将左边的语句通过for语句建立循环结构,如右边程序,将数组的下标换成for语句的循环变量i,对i进行赋值,从0到4。
根据c
语言中for语句的语法规则,程序最终的输出结果与左边相同。
再举例,输出二维数组元素,其与输出素数方法相同,只是结构相对复杂一些。
如图3所示,左边是按照顺序结构的方法编写程序,一共需要编写12条语句,程序编写方法比较复杂,通过观察可以看出左边程序中的数组下标发生变化,但是二维数组的行与列的下标同时都在变化,所以通过上例中的一条for语句无法完成循环结构,对左边的顺序结构进行分析发现每三条语句为一组进行划分,可以划分出4组可以用for语句建立循环结构,那么我们将列的下标通过循环变量j来替代建立for语句的循环结构,如图右边所示,可建立4条for语句,对不不同行的下标通过循环变量i来代替,合并4条for语句,最终简化为二重for循环的语句,同样可以输出二维数组元素。
通过上例分析,通常情况下我们对输出二维数组元素的编程思路都采用二重for循环与二维数组相结合的方式来实现,但是在实际运用中,我们也可以通过一重for循环来实现输出二维数组元素。
通过一重for循环来实现是无论数组下标如何变化,我们都可以首
先确定输出语句printf一定会执行12次,那么如果采用一重for 循环,那么循环变量i的值就需要从0递增到11。
接下来我们可以分析数组行下标m和列下标n与循环变量i之间的关系,通过观察可以得出循环变量i=行下标m*3+列下标n,根据整数除法的思想,行下标m是循环变量i整除3后的商,而列下标n是循环变量i整除3后的余数,即:
m=i/3,n=i%3
从而可以写出下面的for语句:
for(i=0;i<12;i++)
printf(“%d”,a[i/3][i%3]);
3 结束语
通过上面简单的c语言循环结构实例,能够使学生在刚刚接触c 语言循环结构课程时,较为容易的理解和掌握,并能够通过学习改变思维方式,理解程序设计中的精髓,通过c语言入门,往更深层的计算机语言学习,为成为一名合格的程序员而努力。
同时教师通过建立c语言循环结构教学课件循序渐进的引导,帮助学生完成计算机语言课程内容的学习。
参考文献:
[1]古力米热·阿吾旦.c语言中for循环语句的应用研究[m].现代商贸工业,2010(13).
[2]宁雪静等.高级语言程序设计课程整合研究[m].计算机教育,2009(2).
[3]田霓光.浅谈c程序设计中循环结构的教学[m].咸宁学院学报,2009(6).
[4]李霞.浅谈启发式教学法在c语言循环结构的应用[m].科学大众.科学教育研究,2009(10).
[5]胡绪英.c++语言中循环结构的教学设计[m].软件导刊,2010(11).。