当前位置:文档之家› 循环结构程序设计讲课教案

循环结构程序设计讲课教案

循环结构程序设计讲课教案
循环结构程序设计讲课教案

实验四循环结构程序设计

一.【实验目的】

1、熟练使用for、while和do…while语句实现循环结构程序设计。

2、理解循环条件和循环体,以及for、while和do…while语句的相同及不同之处。

3、熟练掌握break和continue语句的使用。

4、掌握使用“debug”菜单调试程序的方法。

二.【实验内容和步骤】

1、程序调试题

A.目标:进一步学习掌握程序调试的方法和技巧。

B.内容:参照《实验指导》教材P38“1.调试示例”,改正程序中的错误,使其实现程序的功能。(注:程序文件保存在“调试示例”文件夹中,文件名为error04_1.cpp)

①调试正确的源程序清单

#include

int main(void)

{

int m, n, j, k;

do{

printf("Input m: ");

scanf("%d", &m);

printf("Input n: ");

scanf("%d", &n);

}while(m<0||n<0);

j = m;

while(j % n != 0)

j = j + m;

k = (m * n) / j;

printf("最小公倍数是%d \n最大公约数是%d\n ", j, k);

return 0;

②运行结果:(提示:通过屏幕截图,贴粘程序运行界面)。

2、完善程序,并调试运行程序

题目(1)求1+1/2+1/3+??+1/n。程序功能:从键盘上输入一个正整数repeat (0

①调试正确的源程序清单

#include

int main( )

{

int ri, repeat;

int i, n;

float sum;

scanf("%d", &repeat);

for(ri=1; ri<=repeat; ri++)

{

scanf("%d", &n);

sum=0;

for(i=1;i<=n;i++){

sum=sum+1.0/i;

}

printf("%.3f\n", sum);

}

②运行结果:(提示:通过屏幕截图,贴粘程序运行界面)。

题目(2)求n!。程序功能:从键盘上输入一个正整数repeat (0

①调试正确的源程序清单

#include

int main( )

{

int ri, repeat;

int i, n;

double fact;

scanf("%d", &repeat);

for(ri=1; ri<=repeat; ri++)

{

scanf("%d", &n);

fact=1;

for(i=1;i<=n;i++){

fact=fact*i;

}

printf("%.0f\n", fact);

}

②运行结果:(提示:通过屏幕截图,贴粘程序运行界面)。

题目(3)求x的n次幂(即:x n)。程序功能:从键盘上输入一个正整数repeat (0

①调试正确的源程序清单

#include

int main( )

{

int ri, repeat;

int i, n;

double x, mypow;

scanf("%d", &repeat);

for(ri=1; ri<=repeat; ri++)

{

scanf("%lf%d", &x, &n);

mypow=1;

for(i=2;i<=n;i++)

mypow= mypow*x;

printf("%.2f\n", mypow);

}

②运行结果:(提示:通过屏幕截图,贴粘程序运行界面)。

题目(4)求1-1/2+1/3-1/4+…+1/n。程序功能:从键盘上输入一个正整数repeat (0

(注:程序文件保存在“第4题”文件夹中)打开proj4.cpp文件,在两条星线之间填入相应的代码,使程序完成该功能。

①调试正确的源程序清单

#include

int main( )

{

int ri, repeat;

int i, n, flag;

float sum;

scanf("%d", &repeat);

for(ri=1; ri<=repeat; ri++)

{

scanf("%d", &n);

sum=0;

flag=1;

for(i=1;i<=n;i++){

sum=sum+flag*1.0/i;

flag=-flag;

}

printf("%.3f\n", sum);

}

}

②运行结果:(提示:通过屏幕截图,贴粘程序运行界面)。

题目(5)求1+1/3+1/5+1/7+…。程序功能:从键盘上输入一个正整数repeat (0

①调试正确的源程序清单

#include

int main( )

{

int ri, repeat;

int i, n, temp;

float sum;

scanf("%d", &repeat);

for(ri=1; ri<=repeat; ri++)

{

scanf("%d", &n);

temp=1;

sum=0;

for(i=1;i<=n;i++){

sum=sum+1.0/temp;

temp=temp+2;

}

printf("%.3f\n", sum);

}

}

②运行结果:(提示:通过屏幕截图,贴粘程序运行界面)。

题目(6)求1-1/3+1/5-1/7+…。程序功能:从键盘上输入一个正整数repeat (0

①调试正确的源程序清单

#include

#include

int main( )

{

int ri, repeat;

int temp, flag;

double eps, item, sum;

scanf("%d", &repeat);

for(ri=1; ri<=repeat; ri++)

{

scanf("%le", &eps);

flag=1;

sum=0;

temp=1;

item=1.0;

while(fabs(item)>=eps){

item=flag*1.0/temp;

sum=sum+item;

temp=temp+2;

flag=-flag;

}

printf("%.6f\n", sum);

}

}

②运行结果:(提示:通过屏幕截图,贴粘程序运行界面)。

题目(7)求1-1/3+1/5-1/7+…。程序功能:从键盘上输入一个正整数repeat (0

温度F的转换表。转换计算公式:F=32+ C*9/5,输出语句:printf("%d%10.2f\n", c, f); 。(注:程序文件保

存在“第7题”文件夹中)打开proj7.cpp文件,在两条星线之间填入相应的代码,使程序完成该功能。

①调试正确的源程序清单

#include

int main( )

{

int ri, repeat;

int begin, c, end;

double f;

scanf("%d", &repeat);

for(ri=1; ri<=repeat; ri++)

{

scanf("%d%d", &begin, &end);

printf("Celsius Fahrenheit\n");

for(c=begin;c<=end;c++){

f=32+c*9/5;

printf("%d%10.2f\n", c, f);

}

}

}

②运行结果:(提示:通过屏幕截图,贴粘程序运行界面)。

题目(8)求奇数和。程序功能:从键盘上输入一个正整数repeat(0

①调试正确的源程序清单

#include

int main( )

{

int ri, repeat;

int x, sum;

scanf("%d", &repeat);

for(ri=1; ri<=repeat; ri++)

{

scanf("%d", &x);

sum=0;

while(x>0){

if(x%2==1)

sum=sum+x;

scanf("%d", &x);

}

printf("%d\n", sum);

}

}

②运行结果:(提示:通过屏幕截图,贴粘程序运行界面)。

题目(9)求最大值和最小值。程序功能:从键盘上输入一个正整数repeat(0

①调试正确的源程序清单

#include

int main( )

{

int ri, repeat;

int i , max, min, n, x;

double sum,avg;

scanf("%d", &repeat);

for(ri=1; ri<=repeat; ri++)

{

scanf("%d", &n);

scanf("%d", &x);

sum=x;

max=x;

min=x;

for(i=2;i<=n;i++){

scanf("%d", &x);

if(max>=x)

max=max;

else

max=x;

if(min<=x)

min=min;

else

min=x;

sum=sum+x;

}

avg=sum/n;

printf("The Max is %d.\n", max);

printf("The Min is %d.\n", min);

printf("The Sum is %f.\n", sum);

printf("The Avg is %f.\n", avg);

}

}

②运行结果:(提示:通过屏幕截图,贴粘程序运行界面)。

题目(10)求整数的位数以及各位数之和。程序功能:从键盘上输入一个正整数repeat(0

①调试正确的源程序清单

#include

int main( )

{

int ri, repeat;

int number, sum;

long int in;

scanf("%d", &repeat);

for(ri=1; ri<=repeat; ri++)

{

scanf("%ld", &in);

number=1;

if(in<0)

in=-in;

sum=in%10;

while(in/10>0){

in=in/10;

sum=sum+(in%10);

number++;

}

printf("number=%d, sum=%d\n", number, sum);

}

}

②运行结果:(提示:通过屏幕截图,贴粘程序运行界面)。

题目(11)求2/1+3/2+5/3+8/5+...之和。程序功能:从键盘上输入一个正整数repeat(0

①调试正确的源程序清单

#include

int main( )

{

int ri, repeat;

int i,n;

float a,b,s,t;

scanf("%d", &repeat);

for(ri=1; ri<=repeat; ri++)

{

scanf("%d", &n);

s=0;

a=2;

b=1;

for(i=1;i<=n;i++){

s=s+a/b;

t=b;

b=a;

a=a+t;

}

printf("%.2f\n",s);

}

}

②运行结果:(提示:通过屏幕截图,贴粘程序运行界面)。

题目(12)求a+aa+aaa+aa…a之和。程序功能:从键盘上输入一个正整数repeat(0

下列运算:输入2个正整数a和n,输出a+aa+aaa+aa…a(n个a)之和。(注:程序文件保存在“第12题”文件夹中)打开proj12.cpp文件,在两条星线之间填入相应的代码,使程序完成该功能。

①调试正确的源程序清单

#include

void main()

{

int ri, repeat;

int i, n;

long int a, sn, tn;

scanf("%d", &repeat);

for(ri=1; ri<=repeat; ri++)

{

scanf("%ld%d", &a, &n);

sn=0;

tn=0;

for(i=1;i<=n;i++){

tn=10*tn+a;

sn=sn+tn;

}

printf("%ld\n",sn);

}

}

②运行结果:(提示:通过屏幕截图,贴粘程序运行界面)。

题目(13)判断素数。程序功能:从键盘上输入一个正整数repeat(0

①调试正确的源程序清单

②运行结果:(提示:通过屏幕截图,贴粘程序运行界面)。

题目(14)统计字符。程序功能:从键盘上输入一个正整数repeat(0

①调试正确的源程序清单

#include

int main( )

{

int ri, repeat;

int blank, digit, letter, other;

char c;

scanf("%d", &repeat);

getchar();

for(ri=1; ri<=repeat; ri++)

{

c = getchar();

blank=0;

digit=0;

letter=0;

other=0;

while((c=getchar())!='\n'){

if(c>='a'&&c<='z'||c<='Z'&&c>='A')

blank++;

else if(c==' ')

digit++;

else if(c>='0'&&c<='9')

letter++;

else

other++;

}

printf("letter=%d, blank=%d, digit=%d, other=%d\n", letter, blank, digit, other);

}

}

②运行结果:(提示:通过屏幕截图,贴粘程序运行界面)。

题目(15)【水平考试题】程序文件保存在“第15题(水平考试题)”文件夹中,打开proj15.cpp,编程实现,任输入一个正整数num,求1+2+3+…+num的和。在两条星线之间填入相应的代码,使程序完成该功能。

①调试正确的源程序清单

②运行结果:(提示:通过屏幕截图,贴粘程序运行界面)。

题目(16)【水平考试题】程序文件保存在“第16题(水平考试题)”文件夹中,打开proj16.cpp,编程实现输入一个长整数,求各位数字的平方和。例如输入-123,输出sum=14。在两条星线之间填入相应的代码,使程序完成该功能。

①调试正确的源程序清单

#include

void main( )

{

int digit;

long in,s;

cout<<"请输入一个长整数:";

cin>>in;

if(in<0)

in=-in;

s=0;

while(in>0)

{

digit=in%10;

s=s+digit*digit;

in=in/10;

}

cout<<"sum="<

}

②运行结果:(提示:通过屏幕截图,贴粘程序运行界面)。

题目(17)【水平考试题】程序文件保存在“第17题(水平考试题)”文件夹中,打开proj17.cpp,程序的功能是计算1~100以内所有含5的数之和。删除程序代码里面的下划线并补充相应的代码。(注意:不得改动其它代码,不得增、删行,不得更改程序结构。)

①调试正确的源程序清单

#include

void main()

{

int i,s=0;

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

if((i/10==5)||(i%10==5))//删除下划线并填入答案

s=s+i;

cout<<"Ths result is "<

}

②运行结果:(提示:通过屏幕截图,贴粘程序运行界面)。

循环结构说课教案

《循环结构》说课稿 高一数学组 宋喆 【教材分析】 (一)教学目标: 1.知识与技能目标 ①理解循环结构,能识别和理解简单的框图的功能。 ②能运用循环结构设计程序框图解决简单的问题。 2.过程与方法目标 通过模仿、操作、探索,学习设计程序框图表达,解决问题的过程,发展有条理的思考与表达的能力,提高逻辑思维能力。 3.情感、态度与价值观目标 通过本节的自主性学习,让学生感受和体会算法思想在解决具体问题中的意义,增强学生的创新能力和应用数学的意识。三、教法分析 (二)教学重点、难点 重点:理解循环结构,能识别和画出简单的循环结构框图, 难点:循环结构中循环条件和循环体的确定。 【教法及学法】 本节课我遵循引导发现,循序渐进的思路,采用问题探究式教学。运用多媒体,投影仪辅助。倡导“自主、合作、探究”的学习方式。 【教学过程】 (一)创设情境,温故求新 引例:写出求100321++++ 的值的一个算法,并用框图表示你的算法。 此例由学生动手完成,投影展示学生的做法,师生共同点评。鼓励学生一题多解——求创。 设计引例的目的是复习顺序结构,提出递推求和的方法,导入新课。此环节旨在提升学生的求知欲、探索欲,使学生保持良好、积极的情感体验。 (二)讲授新课 1.循序渐进,理解知识 【1】选择“累加器”作为载体,借助“累加器”使学生经历把“递推求和”转化为“循环求和”的过程,同时经历初始化变量,确定循环体,设置循环终止条件3个构造循环结构的关键步骤。 (1)将“递推求和”转化为“循环求和”的缘由及转化的方法和途径 引例“求100321++++ 的值”这个问题的自然求和过程可以表示为:n s s s s s s s s n n +=+=+=+=-1342312,,4,3,2 )100,,3,2( =n 用递推公式表示为:???+==-n s s s n n 111 )100,,3,2( =n 直接利用这个递推公式构造算法在步骤n s s n n +=-1中使用了100321,,,,s s s s 共100个变量,计算机执行这样的算法时需要占用较大的内存。为了节省变量,充分体现计算机能以极快的速度进行重复.. 计算的优势,需要从上述递推求和的步骤

循环结构的优秀教案设计

循环结构的优秀教案设计 课题: §1.1.3(3)循环结构 授课教师:山东省东营市胜利一中李玉华 教材:人教B版高中数学必修3 一、教学目标: 1.知识与技能目标 ①理解循环结构,能识别和理解简单的框图的功能。 ②能运用循环结构设计程序框图解决简单的问题。 2.过程与方法目标 通过模仿、操作、探索,学习设计程序框图表达,解决问题 的过程,发展有条理的思考与表达的能力,提高逻辑思维能力。 3.情感、态度与价值观目标 通过本节的自主性学习,让学生感受和体会算法思想在解决 具体问题中的意义,增强学生的创新能力和应用数学的意识。 三、教法分析 二、教学重点、难点 重点:理解循环结构,能识别和画出简单的循环结构框图, 难点:循环结构中循环条件和循环体的确定。 三、教法、学法 本节课我遵循引导发现,循序渐进的思路,采用问题探究式

教学。运用多媒体,投影仪辅助。倡导"自主、合作、探究" 的学习方式。 四、教学过程: (一)创设情境,温故求新 引例:写出求的值的一个算法,并用框图表示你的算法。 此例由学生动手完成,投影展示学生的做法,师生共同点评。鼓励学生一题多解--求创。 设计引例的目的是复习顺序结构,提出递推求和的方法,导 入新课。此环节旨在提升学生的求知欲、探索欲,使学生保 持良好、积极的情感体验。 (二)讲授新课 1.循序渐进,理解知识 【1】选择"累加器"作为载体,借助"累加器"使学生经历把"递推求和"转化为"循环求和"的过程,同时经历初始化变量,确定循环体,设置循环终止条件3个构造循环结构的关键步骤。 (1)将"递推求和"转化为"循环求和"的缘由及转化的方法和途径 引例"求的值"这个问题的自然求和过程可以表示为: 用递推公式表示为: 直接利用这个递推公式构造算法在步骤中使用了共100个变量,计算机执行这样的算法时需要占用较大的内存。为了节

《循环结构》教案

循环结构(二)教案 教学目标: 1.掌握直到型循环结构的框图,理解两种循环结构形式的联系和区别; 2.通过设计直到型循环结构的算法,发展学生有条理地思考与表达的能力, 提高逻辑思维能力; 3.初步运用算法语句编写直到型循环结构的程序,培养学生的动手操作能 力,提高学生数学应用的意识. 教学重点及难点: 重点:直到型循环结构的框图及其应用; 难点:如何判断用直到型循环结构编写的算法程序是否正确. 教学方式: 教师启发讲授与学生探究相结合. 教学手段: CASIO图形计算器和多媒体投影辅助教学. 教学过程: 一.问题引入,探索新结构 ++++的值”这个实例入手,回顾解决此问题的第一种循环结构——当1.以“如何计算123100 型循环,同时强调循环结构中的三种要素:累加变量、计数变量和终止条件. 2.提出思考问题:为了解决相同的问题,在上述循环结构中,终止条件的位置能否改变? 3.通过探究得到一种新的循环结构的形式——直到型循环,并引导学生根据此例归纳出直到型循环的程序框图:

二.探究对比,理解新结构 1.引导学生通过框图归纳出直到型循环的特点:先运行一次循环体,再判断条件是否被满足. 2.用下例帮助学生理解两种形式的循环结构的区别,并通过改变初始条件体会对输出结果的影响. 输出结果:s=0,i=101 输出结果:s=101,i=102 3.通过例1完成对直到型循环程序框图的深入认识. 例1 判断下列求123100+++ +的程序框图是否正确. (1) (2)

实际功能:求2+3+…+101的值实际输出: s=1 三.编程实践,应用新结构 1.教师介绍用CASIO图形计算器实现直到型循环的算法语句: Do 循环体 LoopWhile条件 2.指导学生使用图形计算器将上节课编写的当型循环While语句用Do语句替换,并运行得到结果. 3.通过例2加深对循环结构的理解. 例2 用直到型循环设计一个求20以内所有正奇数乘积的程序框图,并用CASIO图形计算器编程实现. 此例题可引导学生在修改初始变量的值,修改计数变量的步长,修改终止条件,修改语句顺序的过程中加深对循环结构的理解. 4.通过例3强化算理作用及图形计算器的辅助功能.

循环结构程序设计代码

实验五代码: 基础能力落实: 1)编写一个程序,将用分钟表示的时间转化成以小时和分钟表示的时间。使用#define 或者const来创建一个代表60的字符常量。使用while循环来允许用户重复键入值,并且当键入一个小于等于0的时间时终止循环。要求用while语句 #include int main(void) { const int minperhour = 60; int minutes, hours, mins; printf("Enter the number of minutes to convert: "); scanf("%d", &minutes); while (minutes > 0 ) { hours = minutes / minperhour; mins = minutes % minperhour; printf("%d minutes = %d hours, %d minutes\n", minutes, hours, mins); printf("Enter next minutes value (0 to quit): "); scanf("%d", &minutes); } printf("Bye\n"); return 0; } 2)编写一个程序打印一个表,表的每一行都给出一个整数,它的平方以及它的立方,要求用户输入表的上限和下限。使用一个for循环。 #include int main( void ) { int lower, upper, index; int square, cube; printf("Enter starting integer: "); scanf("%d", &lower);

C语言FOR循环说课稿

C语言FOR循环说课稿 各位评委老师上午好,我今天说课的内容是“FOR循环”(板书),下面我将从教材的地位及作用、学生学情、教学目标、教学重难点、教法、学法、教学过程、教学效果的预测与反思这八个方面开始本次的说课。 教材的地位及作用: C语言程序设计是中职学校计算机专业的一门重要的课程,该课程旨在培养学生严谨的程序设计思想、灵活的逻辑思维及较强的动手能力,是其他专业课程学习的基础,。 该课程可以分为四大模块,分别是C基本概念、三种基本程序设计结构、数组与指针、函数。三种基本程序设计结构分别是顺序结构、选择结构和循环结构,三种结构中循环结构是重点,并且也是较难的一种,而循环中for循环是程序中运用最多的。在学习本节内容之前已经学习了顺序结构和选择结构,学生已经有了一定的结构化程序设计思想,这为本节课的学习起到了一个很好的铺垫作用。同时for循环作为循环结构的第一课时,是学习循环结构的基础,同时也为即将学习的while循环和do-while 循环以及多重循环做准备,因此本节课的学习在本课程中具有举足轻重的地位,起着承上启下的作用。 学生学情: 对教材有了一定的了解之后,我们来说一下学生 我所面向的是中职学生,这些学生有一定的数学逻辑思维基础,之前已经学习过顺序、选择结构程序,并具有编写调试简单程序的能力。但是C语言这门课程知识逻辑性强,较为枯燥,部分学生的学习兴趣不高,并且中职学生对于上机实际操作要比学习理论知识更为兴趣,但解决实际应用问题的能力较差,同时学生编写代码、调试程序的能力,存在较大差异。因此,在教学中要立足学生之间的差异,合理安排教学活动,在教学过程中注意激发学生的学习兴趣,培养学生理论联系实际的能力,从而达到最佳的教学效果。 教学目标: 基于以上对教材和学生学情分析,结合大纲要求,我制定了了如下教学目标: 教学重难点: 基于以上分析,我将本节课的教学重点确定为:for语句语法规则、for语句执行过程,而教学难点则是深入理解循环的思想、对for语句执行过程的理解、利用for循环解决实际问题。 教法和学法: 教师的职责是授人与渔而不是授人以鱼,要教会学生自己学习和自主探索的能力。有由于学生在基础知识状况、兴趣爱好、智力水平、潜在能力、等方面存在差异,因此:本课采用的主要教学方法有讲授法、演示法、范例分析法、任务驱动法,体现了以学生为主体,以“学生发展为本”的新课程教学理念。 学法上选取自主探究学习、小组协作学习为主的方法并配合练习法,让学生自己发现问

《循环结构程序设计》教案

《循环结构程序设计》的教学设计 涞源职教中心高海龙 【教材分析】本节《循环结构程序设计》是职业学校电子类教材数据库应用技术FOXBASE+第七章第五节内容。本节课是数据库结构程序设计的一个重点;也是综合运用三种基本结构程序设计的一个难点;更是学生逻辑思维能力、创造能力、综合能力的一个重要体现。 【学情分析】我授课的班级1105班为计算机专业毕业班学生,数据库是他们对口升学专业考试科目之一,另外本课程对于学生毕业后能独立适应工作需要将起到很重要的奠定基础作用。因此该门课程的设立对他们尤其重要。这个班学生的整体素质很好,而且都是有升学愿望的,所以在教学中我注重教师演示讲解、学生实际动手操作,并给学生自我展示的机会,让他们自己解题,自己讲题,既锻炼了学生解决问题、创新解题的能力,培养了学生学习的兴趣,还使其能克服胆怯心理,提高语言表达能力,真正做到了教学相结合,以达到预期效果。 在信息技术能力方面:高三年级的学生已经历了三年的计算机知识的学习,都具备了熟练操作和使用Windows、Dos操作系统及数据库软件的能力。在计算机知识方面:高三学生已经学完了Foxbase+语言这门课程,已经具备了利用三种基本结构进行结构化程序设计的能力。 【设计思路】因为本节课既是一节计算机语言复习总结课又是一节改革教学组织形式的创新课,所以更应该为学生营造一个和谐、轻松又丰富多彩的学习氛围,因此在整个学习过程中都以利用一个制作美观、新颖的Flash课件作为主线,一步步地来完成学生对知识点的总结、巩固、创新的过程。首先教师引导学生观看事先准备好的课件,观看非常精美、有趣的总界面,然后再引导学生通过一个个地进入在总界面上的前提测评、目标深化、互动课堂、课堂小结、课后作业几个链接来完成本节课的学习任务。其中目标实施部分主要采用任务驱动式教学法、启发式教学法、多媒体网络式授课法等多种教学法相结合,培养学生自主学习、自我归纳的能力;互动课堂部分主要采用“小先生教学法”,让“小先生”自己研究问题—解决问题—阐述问题,实质是让学生作学习的主人,这种“自主学习,自主讲评”改变了以往的传统教学模式,充分体现新课改的精神,即以“学生为主体”、“教师是学生学习的促进者”。 【教学目标】知识目标:①复习单循环结构、多重循环结构的命令格式及功能;②利用循环结构命令语句进行结构化程序设计;能力目标:①培养学生对所学知识的总结概括能力;②培养学生的研究性学习能力;③培养学生的逻辑思维能力和上机操作能力。情感目标:①培养学生主动学习、温故知新、归纳总结的意识;②培养学生的创新意识和团结协作精神;③培养学生勇于自我展示,树立自信心的意识。 【教学重点】(及解决措施)让学生能够熟练地掌握、灵活地运用循环结构进行结构化程序设计,并且培养学生的创新能力。为了突破本次课的重点本次教学活动中充分利用多媒体手段为学生创造一个轻松、活泼的情境,来激发学生学习的兴趣,创造一个和谐交流、动手实践的氛围。既使学生自主获得了知识,又培养了他们的创造性思维。 【教学难点】(及解决措施)能够使学生将以前所学习过的知识有机地结合在一起,并且充分发挥自己的创造力,利用三种基本结构进行编程。为了突破本次课的难点本节课主要采取“小先生教学法”。即让学生走上讲台,充当教师的角色,进行一些平日只有教师主导下完成的教学目标和任务。让学生由后台走到前台,让小先生自己研究问题— 1

循环结构程序设计典型例题

循环结构程序设计典型例题 例1有数列2/3、4/5、6/9、10/15……求此数列前30项的和。 算法分析: 对于数列的题,首先要找出通项公式,或前后项的计算关系公式,根据公式求所需。由于数列的题一般执行次数能确定,用for语句来编写比较方便。 此题,前后项的关系是:后一项的分子是前一项的分母加1,后一项的分母是前一 项的分子加分母。解题思路是用循环语句求各项,并把值累加,因为是求前30项的和,循环执行30次。 1.初值i=2,j=3,s=0; 2.用n从1到30循环 3.s=s+ i/j; 4.c=i; i=j+1; j=c+j; 5输出s; 程序: #in clude mai n() { int i=2,j=3, n,c; float s=0; for(n=1; n<=30 ;n++) { s=s+(float)i/j; c=i; i=j+1; j=c+j; } printf( "n%f” ,s); } 此题中的n与循环体中的执行语句没有数值上的联系,仅仅用做决定循环执行的次数。 例2:下面这个程序,想想它实现的是什么功能? #in clude mai n() { int i,s=0; for(i=1;i<=100;i++) {if(i%5==0) continue; s=s+i; } printf( n“d' ,s); } 在左边的程序中,i从1到100循环,当i是5的倍数时,直接进入下一个i,当i不是5的倍数时,把i累加到s,最后输出s。所以,这个程序实现的是求1~100中间所有非5的倍数的数之和。 例3:输出n~m中(0<*m)能被3整除,且至少有一个数字是5的所有数。 算法分析:

循环结构教案

教师课时教案备课人杨晓春授课时间 课题1.1.3循环结构 课标要求1.掌握程序框图的概念;2.会用通用的图形符号表示算法; 3.掌握画程序框图的基本规则,能正确画出程序框图; 教学目标 知识目标 掌握程序框图的概念;会用通用的图形符号表示算法,掌握算法的三 个基本逻辑结构;掌握画程序框图的基本规则,能正确画出程序框图。 技能目标 通过模仿、操作、探索,经历通过设计程序框图表达解决问题的过程; 学会灵活、正确地画程序框图。 情感态度价值观 通过本节的学习,使我们对程序框图有一个基本的了解;掌握算法语 言的三种基本逻辑结构,明确程序框图的基本要求;认识到学习程序 框图是我们学习计算机的一个基本步骤,也是我们学习计算机语言的 必经之路。 重点循环结构 难点综合运用这些知识正确地画出程序框图。 教学过程及方法 问题与情境及教师活动学生活动 一.导入新课 1.设计一个算法的程序框图的基本思路: 第一步,用自然语言表述算法步骤. 第二步,确定每个算法步骤所包含的逻辑结构,并用相应 的程序框图表示. 第三步,将所有步骤的程序框图用流程线连接起来,并加 上两个终端框. 2.算法的基本逻辑结构有哪几种?用程序框图分别如何表 示?(顺序结构、条件结构) 3.前面我们学习了顺序结构,顺序结构像一条没有分支的河 流,奔流到海不复回;条件结构像有分支的河流最后归入 大海;事实上很多水系是循环往复的,今天我们开始学习 循环往复的逻辑结构——循环结构. 二.研探新知 探究(一):循环结构 提出问题 (1)请大家举出一些常见的需要反复计算的例子. (2)什么是循环结构、循环体? (3)试用程序框图表示循环结构. (4)指出两种循环结构的相同点和不同点. 讨论结果:

《循环的嵌套》说课

《循环的嵌套》说课 【说教材】 本课程所用教材是中等职业教育国家规划教材(计算机及应用专业),所讲内容为循环的嵌套,本章内容作为学习较复杂程序设计的基础十分重要,特别是循环结构几乎是设计各种程序必不可少的,所以正确理解、运用其形式结构更是基础的基础。 【说教学目标】 1.知识目标:理解并掌握循环嵌套的形式;阅读复杂的程序;编写简单程序;2.能力目标:培养学生分析能力,逻辑判断能力,想象力,实践能力,合作精神; 3.创业目标:以就业为导向,培养专业思想,提高创业意识,为适应职业岗位需要和具备继续学习能力打下良好的基础; 4.情感目标:培养学生愉悦的学习心情,以积极的态度接受并扩展所学知识。【说教学重点、难点】 教学重点1.循环嵌套的基本概念 2.循环执行过程及阅读程序 3.编写简单的程序 教学难点:应用循环嵌套设计程序 【说学生】 职业学校的学生基础知识相对薄弱,记忆能力、理解能力、实验操作能力也不能与普通高中的学生相比,但作为C语言这门学科,实践性比较强,只要稍加用心,就会见到效果。而且不需要太多的理论基础,都是计算机入门课程,只要在教学中加以正确的引导,让他们体验学习上成功喜悦,从而积极有效地增强了学生的学习动机。 【教学策略】 课前准备:1.学生分组 2.课件制作 教学方法:预习—示范—讲解—练习—指导法

教学课时:1课时(45分钟) 教学课型:新授课 教学用具:投影仪、多媒体电脑 【说教学过程】 一、复习提问 1.循环语句有哪几种? 有三种:(1)while() (2)do while(); (3)for() 2.什么是选择结构的嵌套? 在一个选择语句中又包括另一个选择语句。 二、新课教学 (一)基本概念(启发式讲解) 什么是循环嵌套呢? (由选择嵌套引出新课,大屏幕展示) ●在循环体语句中又包含有另一个完整的循环结构的形式,称为循环的嵌 套。如果内循环体中又有嵌套的循环语句,则构成多重循环。 ●嵌套在循环体内的循环体称为内循环,外面的循环称为外循环。 ●while 、do-while、for三种循环都可以互相嵌套.循环嵌套的形式 (大屏幕展示几种形式,启发学生思考,说出其它形式) while( ) { do { }while ( ); } for( ) { for( ) { } } do { while( ) { } }while(); for( ) { while( ) { } } 通过对比,进一步掌握循环嵌套的形式:

循环结构教学设计

《循环结构》教学设计 一、教学目标 1.知识与技能目标 ①理解循环结构,能识别和理解简单的框图的功能。 ②能运用循环结构设计程序框图解决简单的问题。 2.过程与方法目标 通过模仿、操作、探索,学习设计程序框图表达,解决问题的过程,发展有条理的思 考与表达的能力,提高逻辑思维能力。 3.情感、态度与价值观目标 通过本节的自主性学习,让学生感受和体会算法思想在解决具体问题中的意义,增强学生的创新能力和应用数学的意识。三、教法分析 二、教学重点、难点 重点:理解循环结构,能识别和画出简单的循环结构框图, 难点:循环结构中循环条件和循环体的确定。 三、教法、学法 本节课我遵循引导发现,循序渐进的思路,采用问题探究式教学。运用多媒体,投影仪辅助。倡导“自主、合作、探究”的学习方式。 四、教学过程 (一)创设情境,温故求新 引例:写出求的值的一个算法,并用框图表示你的算法。 此例由学生动手完成,投影展示学生的做法,师生共同点评。鼓励学生一题多解── 求创。 设计引例的目的是复习顺序结构,提出递推求和的方法,导入新课。此环节旨在提升学生的求知欲、探索欲,使学生保持良好、积极的情感体验。 (二)讲授新课 1.循序渐进,理解知识 【1】选择“累加器”作为载体,借助“累加器”使学生经历把“递推求和”转化为“循环求和”的过程,同时经历初始化变量,确定循环体,设置循环终止条件3个构造循环 结构的关键步骤。 (1)将“递推求和”转化为“循环求和”的缘由及转化的方法和途径引例“求的值”这个问题的自然求和过程可以表示为: 用递推公式表示为: 直接利用这个递推公式构造算法在步骤中使用了共100

个变量,计算机执行这样的算法时需要占用较大的内存。为了节省变量,充分体现计算机能以极快的速度进行重复计算的优势,需要从上述递推求和的步骤中提取出共同 的结构,即第n步的结果=第(n-1)步的结果+n。若引进一个变量来表示每一步的计算结果,则第n步可以表示为赋值过程。 (2)“”的含义 利用多媒体动画展示计算机中累加器的工作原理,借助形象直观对知识点进行强调说明① 的作用是将赋值号右边表达式的值赋给赋值号左边的变量 。 ②赋值号“=”右边的变量“”表示前一步累加所得的和,赋值号“=”左边的 “”表示该步累加所得的和,含义不同。 ③赋值号“=”与数学中的等号意义不同。在数学中是不成立的。 借助“累加器”既突破了难点,同时也使学生理解了中的变化和 的含义。 (3)初始化变量,设置循环终止条件 由的初始值为0,的值由1增加到100,可以初始化循环变量和设置循环终止 条件。 【2】循环结构的概念 根据指定条件决定是否重复执行一条或多条指令的控制结构称为循环结构。 教师学生一起共同完成引例的框图表示,并由此引出本节课的重点知识循环结构的概念。这样讲解既突出了重点又突破了难点,同时使学生体会了问题的抽象过程和算法的构建过程。还体现了我们研究问题常用的“由特殊到一般”的思维方式。 2.类比探究,掌握知识 例1:改造引例的程序框图表示 ①求的值 ②求的值 ③求的值 ④求的值 此例可由学生独立思考、回答,师生共同点评完成。 通过对引例框图的反复改造逐步帮助学生深入理解循环结构,体会用循环结构表达算 法,关键要做好三点: ①确定循环变量和初始值 ②确定循环体 ③确定循环终止条件。 例2:根据程序框图回答下面的问题 (1)图中箭头指向①时,输出=______;指向②时输出=_____. (2)该程序框图的算法功能是_______________________.

高中信息技术 循环结构教案 沪教版选修1

VB循环结构程序设计 -for…next循环语句 一、基本说明 1、教学内容所属模块:选修1《算法与程序设计》 2、年级:高二 3、所用教材出版单位:上海科技教育出版社 4、所属的章节:第二章第四节循环结构 5、学时数:45分钟 二、教学设计 教学目标知识 1.了解循环结构的构建。 2.掌握for…next语句的格式及其功能。 3.灵活运用for…next语句。 技能通过编写程序,让学生会运用for/next语句实现循环流程控制。 情感价 值观 1.通过问题和算法分析过程,促进逻辑分析能力的提高。 2.通过活动的实践,体验循环结构的构建和实现过程。 3.能够运用循环结构的知识和技能,阅读和欣赏更多的关于循环问题的程序。 教学 重点 循环结构的构建,运用循环语句实现对循环流程的控制。 主要教学方法 通过计算机阅卷及一个简单程序引出循环结构,遵循从易到难,由浅到深的循序渐进的开放式课堂教学。教师采用分析法、演示法、实验法和讨论法等多种教学方法,充分体现了学生是教学活动中的主体;而教师通过对学生参与学习的启发、调整、激励来体现自己的主导作用。使学生在协作学习中目标明确、态度积极、气氛活跃,注意培养学生掌握结构化程序设计思想。 教学过程 教师活动学生活动教学意图 [复习引入]:同学们分组讨论:现在我们很多考试都使用答题卡,都是采用计算机阅卷,那么计算机是怎样阅卷,怎样进行这项重复工作的呢?学生议论纷纷,气氛 活跃 通过身边的事 例引起学生好 奇心,导出新 课 同学们:首先我们从一个简单的例题说起: 例1:编写一个程序:打印5行竖排的“*”。 如果是打印10行、100行、1000行甚至更多的竖排“*”,那我们用循环就很容易实现。 学生稍做思考 并编写出程序: Private Sub form_click() PRINT “*” PRINT “*” PRINT “*” PRINT “*” PRINT “*” End Sub 复习一下前面 所学内容,从 简单到复杂

循环结构程序设计典型例题

循环结构程序设计典型例题 例1:有数列2/3、4/5、6/9、10/15……求此数列前30项的和。 算法分析: 对于数列的题,首先要找出通项公式,或前后项的计算关系公式,根据公式求所需。由于数列的题一般执行次数能确定,用for语句来编写比较方便。 此题,前后项的关系是:后一项的分子是前一项的分母加1,后一项的分母是前一项的分子加分母。解题思路是用循环语句求各项,并把值累加,因为是求前30项的和,循环执行30次。 1. 初值i=2,j=3,s=0; 2. 用n从1到30循环 3. s=s+ i/j; 4. c=i; i=j+1; j=c+j; 5.输出s; 程序: #include<> main( ) { int i=2,j=3,n,c; float s=0; for(n=1;n<=30;n++) { s=s+(float)i/j; c=i; i=j+1; j=c+j; } printf(“\n%f”,s); } 此题中的n与循环体中的执行语句没有数值上的联系,仅仅用做决定循环执行的次数。 例2:下面这个程序,想想它实现的是什么功能? #include<> main( ) { int i,s=0; for(i=1;i<=100;i++) {if(i%5==0) continue; s=s+i; } printf(“\n%d”,s); } 在左边的程序中,i从1到100循环,当i是5的倍数时,直接进入下一个i,当i不是5的倍数时,把i累加到s,最后输出s。所以,这个程序实现的是求1~100中间所有非5的倍数的数之和。 例3:输出n~m中(0

程序的循环结构教学设计

《程序的循环结构》 北京师范大学励耘实验学校牛静 一、教材依据 广东教育出版社出版的2007-2008学年普通高中课程标准实验教科书《算法与程序设计(选修)》中第二章《程序设计基础》中的第四节《程序的循环结构》。 二、设计思想 ⒈教学设计指导思想 以建构主义理论为指导进行本节课教学设计。设计以学生为中心,以解决问题为主线,引领学生经历“分析问题——设计算法——编写程序——调试程序”等用计算机解决问题的过程,体验程序设计的一般方法,展示问题求解的思维过程和方法,培养学生分析问题、解决问题的能力。强调教师对问题情境的创造性设置,突出学生主动思考、分析、比较的过程和实践的活动。 体现新课程的理念,引导学生注意寻找、发现身边的实际问题,从简单问题出发,设计解决问题的算法,并能初步选择使用恰当的循环语句解决问题,从而培养学生运用信息技术解决实际问题的能力,力争让学生将所学的信息技术应用到学习、生活实践中。 信息技术课程标准中对应要求是:“会使用程序设计语言实现顺序、选择、循环三种控制结构。初步掌握调试、运行程序的方法。 ⒉教材分析 《程序的循环结构》是广东教育出版社出版的普通高中课程标准实验教科书《算法与程序设计(选修)》中第二章《程序设计基础》中的第四节《程序的循环结构》,本节课是其中的第二节课,前面同学们已经学习了用For语句实现循环。循环结构是程序设计中的重点也是难点。 ⒊教学对象分析

⑴学生已经学习了程序的顺序结构、选择结构和循环结构中的For循环。 ⑵掌握了For循环语句的格式、功能和执行过程。 三、教学目标 知识与技能:理解Do循环语句的基本格式、功能和执行过程 过程与方法:初步学会使用Do循环语句解决简单实际问题,初步掌握根据条件选择恰当的循环语句来解决简单问题的方法。 情感态度价值观:通过对不同循环语句解决问题的过程进行比较,体会到解决问题时要具体问题具体分析。 四、教学重点、难点 教学重点:学会使用Do循环语句来实现循环控制结构,解决简单问题。 教学难点:根据条件选择恰当的循环语句来解决简单问题。 五、教学方法 讲授法、讨论法、任务驱动、上机实践法、探究法等。 六、教学准备 ⒈教学用具: 多媒体网络教室及教学系统、、课件。 ⒉学习效果评价设计: ⑴问题一、问题二两道上机实践题完成情况; ⑵学习资料上的两道“想一想”题完成情况 ⑶学习活动中的表现 评价量规

C语言程序设计说课教案.docx

C语言程序设计说课教案 《C语言程序设计》说课教案 从以下方面说明 : 一、课程性质、地位 二、教学对象分析及要求 三、课程体系 四、课程的重点、难点及突破 五、教学方法与教学手段 六、学生考核 七、教学计划 一、课程性质、地位 1.课程的性质 《C语言程序设计》课程是高职高专通信类和电子信息类各专业职业素质必修 课,旨在培养高职学生运用计算机进行逻辑思维的能力,掌握运用 C 语言编程来解决岗位工作中实际问题的方法和步骤,为提高职业能力和拓展职业空间打下坚实基 础。所以,本课程主要针对培养这类人才基本程序设计能力的目的而设置的课程。 学生毕业后工作岗位主要有计算机管理员、单片机应用设计员、网络应用等, 在计算机控制、单片机应用、电子技术、通信技术等相关行业中都将使用 C 语言作为应用系统开发设计语言, C语言也是其它编程语言类课程的前导课程,也是信息产业部计算机专业和软件专业水平资格考试 ( 程序员、网络管理员等 ) 考试中要求的主要程序设计语言。 应用程序设计 软件工程

C++、 VC、VB 数据结构 C语言程序设计 2.课程的地位 通信技术 ( 计算机网络方向 ) 专业和电子信息技术专业,C语言室基础,是计算机应用设计的基础。是学习其他程序语言的前导及基础。二、教学对象分析及要求 1( 教学对象 本系学习 C 语言课程的生源是高中生源和中专生源。高中生文化基础扎 1 实,但计算机专业知识薄弱,开始学习时较困难,但入门提高较快。中专 生,文化基础薄弱,但计算专业已经学习一些,开始学习不会很困难,但 是知识转换能力方面会有困难,学习进度会慢一点。针对不同生源学生在 教学方法和重难点方面有所区别。 ( 对同一生源不同程度学生采取如下策略2 状态策略 1 厌学扎实其理论基础,找到实践成功点 2 较差结合实际案例,提高解决问题的能力 3 乐学知识转换,提高具体的应用能力 4 较好知识转换,提高综合的应用能力 高职智力不差,但自控能力相比较差。所以要从非智力因素入手,培养 学生的学习积极性,提高实际动手能力。 3( 在教学中教与学 问题教学演示探究教

高中信息技术_程序的循环结构教学设计学情分析教材分析课后反思

程序的循环结构教学设计 一、教材分析 本节课是广东教育出版社出版《算法与程序设计(选修)》中第二章《程序设计基础》中的第四节《程序的循环结构》内容。 信息技术课程标准中对应要求是:“会使用程序设计语言实现顺序、选择、循环三种控制结构。初步掌握调试、运行程序的方法。 教材通过“超级水稻种植试验的统计分析”、“陈婷植树”、“乘法表”等典型例题,引导学生经历分析问题、设计算法、编写程序、调试程序等用计算机解决问题的过程。通过分析程序,介绍了VB语言的FOR循环语句和Do循环语句的格式、功能和执行过程。 二、设计思想 ⒈教学设计指导思想 设计以学生为中心,以解决问题为主线,引领学生经历“分析问题——设计算法——编写程序——调试程序”等用计算机解决问题的过程,体验程序设计的一般方法,展示问题求解的思维过程和方法,培养学生分析问题、解决问题的能力。强调教师对问题情境的创造性设置,突出学生主动思考、分析、对比和实践探究的过程。 三、教学目标 知识与技能:掌握循环语句的基本格式,理解循环语句的功能和执行过程。 过程与方法:学会使用循环语句解决简单实际问题,初步掌握根

据条件选择恰当的循环语句来解决简单问题的方法。 情感态度价值观:通过对不同循环语句解决问题的过程进行比较,体会到解决问题时要具体问题具体分析。 四、教学重点、难点 教学重点:循环语句的基本格式和执行过程. 教学难点:利用循环结构程序解决生活中的实际问题. 五、教学方法 讲授法、讨论法、任务驱动、探究法等。 六、教学准备 ⒈教学用具: 多媒体网络教室及教学系统、VB6.0、课件。 七、教学过程

3 3 2. DO循环语句的基本格式和执行过程 DO循环执行过程板书 引导 分析 讲 观察 思考 理解 思考 学会 明确学习 内容

循环结构程序设计:三种循环语句

一、循环结构(Iteration Structure)的概述 1.目的 为了解决含有重复处理内容的问题,必须采用循环语句(Loop Statement)来编程实现。 2.类型 (1)当型循环结构 (2)直到型循环结构 二、循环语句 1.while语句 ①功能:实现当型循环结构。 ②形式 while(表达式){ 循环体 } ③特点:先判断后执行。 ④举例:(累加和问题)编程计算整数1~100的和。 int i ; //循环变量 int sum = 0 ; //累加和清0 i = 1 ; //循环变量i赋初值 while( i <= 100){ sum = sum + i ; //循环变量累加到sum中 i = i + 1; //改变循环变量i的值 } 2.do-while语句 ①功能:实现直到型循环结构。 ②形式 do{ 循环体

}while(表达式); //注意最后的分号 ③特点:先执行后判断。 ④举例:修改上例。 /*利用do-while语句编程实现整数1~100的和。*/ int i ; //循环变量 int sum = 0 ; //累加和清0 i = 1 ; //循环变量i赋初值 do{ sum = sum + i ; //循环变量累加到sum中 i = i + 1; //改变循环变量i的值 }while(i<=100);//注意最后的分号 3.for语句 ①功能:实现当型循环结构。 ②形式 for(表达式1;表达式2;表达式3){ 循环体 } ③特点:先判断后执行;使用频率最高。 ④举例:修改上例。 /*使用for语句编程计算整数1~100的和。*/ int i ; //循环变量 int sum = 0 ; //累加和清0 for( i = 1 ; i <=100 ; i++ ){//第一个表达式完成循环变量i赋初值;第三个表达式实现改变循环变量i的值 sum = sum + i ; //循环变量累加到sum中 } 4.几种循环语句的比较 ①由于while语句和for语句均实现当型循环结构,两者是完全等价的。 for(表达式1;表达式2;表达式3){

《循环结构》说课稿

《算法基本逻辑结构——循环结构》 一. 教材分析 (一) 教材地位 《循环结构》是人民教育出版社课程教材研究所编著的普通高中课程标准试验教科书数学(必修3)中§1.1.2的内容. 循环结构是算法三大基本逻辑结构中最灵活,内涵最丰富的一种结构,广泛存在于许多著名算法设计中,比如二分法,欧几里德算法,秦九韶算法等,且循环结构是学习循环语句的基础,循环结构中蕴含的“递推”思想为必修五数列的学习奠定了基础,是整个算法教学的重点与难点,同时也是高考关注的重点. 本节课是在学习了顺序结构,条件结构的基础上进行的,安排1课时. (二) 教学目标 (1) 知识与技能 ①理解循环结构概念; ②把握循环三要素:循环变量赋初值、循环体、循环的终止条件; ③能识别和理解循环结构的框图以及功能; ④能运用循环结构设计程序框图解决一些问题. (2) 过程与方法 通过由实例对循环结构的探究与应用过程,培养学生的观察类比,归纳抽象能力;参与运用算法思想解决问题的过程,逐步形成算法分析,算法设计到算法表示的程序化算法思想. (3) 情感、态度与价值观 感受算法思想在解决具体问题中的意义,提高算法素养;经历体验发现、创造和运用的历程与乐趣,体验成功的喜悦;培养学生形式化的表达能力,构造性解决问题的能力,以及程序化的思想意识. (三) 重难点分析 由于循环变量赋初值、循环体、循环的终止条件是在顺序结构和条件结构未出现的概念,同时也是掌握循环结构的关键,由此确立节课的重难点是: 重点:循环结构的三要素. 难点:循环三要素的确定以及循环执行时变量的变化规律. 二. 学情分析 学生已经学习了算法的概念、顺序结构、条件结构及简单的赋值问题.高一学生形象思维、感性认识较强,理性思维、抽象认识能力还很薄弱,因此教学中选择学生熟悉的,易懂的实例引入,通过对例子的分析,使学生逐步经历循环结构设计的全过程,学会有条理的思考问题,表达循环结构,并整理成程序框图. 三. 教法分析 鉴于本节课抽象程度较高,难度较大.故遵循引导发现,循序渐进的思路,采用问题探究式教学.在教学过程中通过不断地提出问题,促进学生深入思考.贯穿本节课的主要问题是:你能在社会生活和学习中举出循环现象的例子吗?你能从循环现象抽象出循环结构概念吗?1n n s s n -=?中的S n 和S n-1能否用一个量表示?如何表达2,3, ,100n =?算法中s s i =?与1i i =+ “等号”与“变量”的涵义等同于数 学中的相应涵义吗?循环结构是通过哪些量和式将一个很长的顺序结构简化为一个精简的结构?当型循环结构与直到型循环结构框有何不同?如何转化?通过以上问题的解决使学生有效地掌握本节课的

VB程序设计FORNEXT循环结构教学设计

《VB程序设计For…Next循环结构》教学设计 江苏省武进高级中学现代教育技术组吴涛 一、教学目标设计 本课内容的学习建立在学生已经学习过第五节《分支结构》的基础上,结合程序设计的三种基本结构,重点介绍循环结构For…Next展开的。在前面几节的学习中,问题比较简单,算法也不复杂,不画流程图也能比较清楚的描述出来。引入分支结构后,需要根据条件的真假,从两条路径中选择一条执行,算法逐渐复杂,流程图愈发显得重要,所以在介绍循环结构处理问题时时一定要配以流程图介绍。 本课内容设计很多程序的分析,以及讨论程序执行结果,如果在教室里面上,写板书的时间就浪费了,但如果用多媒体演示教学,学生只有简单的理性和感性认识,而学生的实践操作这一环就缺少了,相应认知效果就不明显了,利用网络课件,学生可以自己浏览学习,自主下载认知分析。所以本课必须以课本知识为依托,以网络课件为辅助,以问题为导思,来培养学生的创新精神,提高学生自主学习的能力。故制定具体的学习目标如下: 认知目标:1.掌握For-Next语句的格式和功能;2.理解For-Next语句的执行过程; 3.结合分支结构的内容学会使用For-Next语句实现计数循环。 能力目标:1.培养学生利用网络作为工具,并在网络环境下自主学习的能力;2.培养学生提出问题、分析问题、解决问题的综合能力和创造性思维能力。 二、本课内容及重点、难点分析 作为程序设计循环结构的For…Next语句,其格式、功能、执行过程、执行结果、并利用它来解决问题、编制简单程序都是本课内容。 学习重点:学会For…Next的格式及其含义,理解由For…Next编写的程序的过程、结果。 学习难点:For…Next的格式及其含义,由For…Next编写简单的程序。 三、教学对象分析 1、高二年级的学生已经在高一时学习过在网络环境下浏览、搜索、下载等知识,但很久不接触网络,操作已经生疏了,所以事先要对学生进行实际操作的针对性训练,能把网络上的文字数据下载到本地计算机上,如把VB程序段复制粘贴到VB程序环境中执行看结果等等。 2、分支结构的内容只有上过一次课,所以要求学生事先对上次课的内容做好充分

实验三 循环结构程序设计(教案)

实验教案 一、实验目的 (1) 掌握while、do~while、for语句的使用。 (2) 掌握循环体内使用break、continue语句的作用。 (3) 掌握循环及嵌套循环结构的程序设计方法。 二、实验准备 1.C语言实现循环的方法 ①goto 和if 构成的循环:由于goto是无条件转向,不符合结构化程序设计思想,所以不建议使用。 ②while循环:实现“当型”循环,首先判断循环条件,当条件为真,执行循环体,再判断循环条件……此种循环有可能一次也不执行循环体。 ③do~while循环:实现“直到型”循环,与while循环的区别是先执行循环体,再判断循环条件,当循环条件为真,再执行循环体……此种循环至少执行一次循环体。 ④for循环:与while循环类似,一般用于知道循环变量初值、终值及步长值的循环。 2.break 和continue 语句 ①break 语句:可用在循环体或switch语句中,作用是跳出其所在的控制结构。若是在循环体中,则是跳出其所在的循环,使得循环不止一个出口。 ②continue语句:只能用在循环体中,其作用是结束本层本次循环,注意不是退出循环。 3.阅读以下程序,并分析其功能,调试运行程序后再分析其运行结果。 ①掌握三种方法求1到100的累加和。 文件名为ex3-1-1.c,内容如下: # include main() { int sum=0,i=1; while(i<=100) sum+=i++; // 等价于:{ sum=sum+i; i++; } printf("sum is %d\n",sum); } 文件名为ex3-1-2.c,内容如下: # include main() { int sum=0,i=1; do sum+=i++; while(i<=100); printf("sum is %d\n",sum); } 文件名为ex3-1-3.c,内容如下: # include main()

条件语句和循环语句 说课稿 教案 教学设计

条件语句和循环语句 教学目标: 知识与技能 (1)正确理解条件语句和循环语句的概念,并掌握其结构的区别与联系。 (2)会应用条件语句和循环语句编写程序。 过程与方法 经历对现实生活情境的探究,认识到应用计算机解决数学问题方便简捷,促进发展学生逻辑思维能力 情感态度与价值观 了解条件语句在程序中起判断转折作用,在解决实际问题中起决定作用。深刻体会到循环语句在解决大量重复问题中起重要作用。减少大量繁琐的计算。通过本小节内容的学习,有益于我们养成严谨的数学思维以及正确处理问题的能力。 重点与难点 重点:条件语句和循环语句的步骤、结构及功能。 难点:会编写程序中的条件语句和循环语句。 学法与教学用具 计算机、图形计算器 【创设情境】 试求自然数1+2+3+……+99+100的和。 显然大家都能准确地口算出它的答案:5050。而能不能将这项计算工作交给计算机来完成呢? 而要编程,以我们前面所学的输入、输出语句和赋值语句还不能满足“我们日益增长的物质需要”,因此,还需要进一步学习基本算法语句中的另外两种:条件语句和循环语句(板出课题)【探究新知】 (一)条件语句 式是:(IF-THEN-ELSE格式) 当计算机执行上述语句时,首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句1,否则执行ELSE后的语句2。其对应的程序框图为:(如上右图) 在某些情况下,也可以只使用IF-THEN语句:(即IF-THEN格式) IF条件THEN 语句 END IF

计算机执行这种形式的条件语句时,也是首先对IF 后的条件进行判断,如果条件符合,就执行THEN 后的语句,如果条件不符合,则直接结束该条件语句,转而执行其他语句。其对应的程序框图为:(如上右图) 条件语句的作用:在程序执行过程中,根据判断是否满足约定的条件而决定是否需要转换到何处去。需要计算机按条件进行分析、比较、判断,并按判断后的不同情况进行不同的处理。 【例题精析】 〖例1〗:编写程序,输入一元二次方程2 0ax bx c ++=的系数,输出它的实数根。 分析:先把解决问题的思路用程序框图表示出来,然后再根据程序框图给出的算法步骤,逐步把算 法用对应的程序语句表达出来。 算法分析:我们知道,若判别式 240b ac ?=->, 原方程有两个不相等的实数 根12b x a -+= 、22b x a -=;若0?=, 原方程有两个相等的实数根122b x x a ==-; 若0?<,原方程没有实数根。也就是说,在求解方程之前,需要首先判断判别式的符号。因此,这个过程可以用算法中的条件结构来实现。 又因为方程的两个根有相同的部分,为了避免重复计算,可以在计算1x 和2x 之前,先计算 2b p a =- ,q =。程序框图:(参照课本17P ) 程序:(如右图所示) 注:SQR ()和ABS ()是两个函数,分别用来求某个数的平方根和绝对值。 即 ()x = SQR ,{ (0) ()-(0). x x x x x ≥=

相关主题
文本预览
相关文档 最新文档