《c语言 累加累乘 教案.doc》由会员分享,可在线阅读,更多相关《c语言 累加累乘 教案.doc(4页珍藏版)》请在金锄头文库上搜索。
1、课程名称循环语句应用累加累乘教材分析重点循环三要素(循环体、循环条件和初值)的分析,循环结构语句的选择难点分析和编写简单的累加累乘程序教学目标知识目标:巩固循环结构语句的格式,掌握循环结构程序设计的方法 能力目标:培养学生分析问题、解决问题的能力,训练学生逻辑思维和判断能力 发展目标:教给学生灵活的思维方法,培养学生的学习兴趣和勇于探索、勇于创新的精神,提高综合素质教法以讲授为主,并请学生演示编程教具多媒体(ppt)教学过程一、 复习循环语句1、 三种循环的格式和注意点while (表达式) 语句; 只要表达式的值为非0,就重复执行语句,直到表达式值为0时止。 先判断后执行,循环次数=0。do
2、 语句;while (表达式);首先执行语句,然后判断表达式的值。如果表达式为0,继续向下执行,否则,再次执行语句,再次判断表达式的值。语句会被至少执行一次。for (表达式1; 表达式2; 表达式3) 语句; “表达式1”用来实现循环变量初始化工作; “表达式2”作为循环条件; “表达式3”用于循变量的更新。 若循环体只有一条语句,则“”可省略。 循环次数=0。2、选择三种循环的一般原则如果循环次数已知, 用for如果循环次数未知, 用while如果循环体至少要执行一次, 用do-while这只是“一般”原则,不是“原则” 二、 新课引入1+2+3+100 1-2+3-4+ +99-100
3、1-1/3+1/5-1/19+1/211*2*3*202*4*6*20让学生观察这些式子,找出特点,我总结学生的答案,引入累加累乘的概念。,并给出概念。累加:就是定义一个变量(s=0)来保存结果,另定义一个变量(i)实现数值的变化。把数值变化的那个变量(i)的值每次和保存结果的变量(s)进行加运算,结果赋给s. 比如1-10的累加,就是先把1赋给i,和s相加结果给s,之后i变成2,再和s相加结果给s。如此反复就是累加。 累乘也一样,但变量p=1。 三、 新课内容1、累加累乘基本知识: 累加 累乘 初值 公式 初值 公式 0 S=S+I 1 P=P*I 2、 现场编程例1、求 1+2+3+n 分
4、析 1、n个数求和问题,用到累加; 2、用循环语句反复累加,循环体内用S=S+X形式赋值语句; 3、变量S初值为0。代码 #include main( ) int i,n,s; scanf (%d, &n) ; s = 0; for ( i = 1; i = n; i+ ) s = s + i; printf( “ %dn”, s); 同学练习求一百以内奇数和sum=1+3+5+99#includemain() int n,i,sum; n=100; sum=0; for (i=0;i n ;i+) if (i%2 = =1 ) sum=sum + i; printf(“sum=%d n”,s
5、um);例2、求n!=1*2*3*n的值 分析 1、运用到累乘,循环体内用P=P*I形式赋值语句; 2、变量p初值为1; 3、当n较大时,阶乘可能超出整形范围,所以可将累积值设为doouble型。 代码 #include main( ) int i, n; double p; scanf (%d, &n) ; p=1; for ( i = 1; i = n; i+ ) p = p * i ; printf ( p = %.0fn, p); 同学练习计算二十以内偶数积P=2*4*6+*20#includemain() int n,i,p; n=20; p=1; for (i=0;i=n;i+)
6、if (i%2 = =0 ) p=p* i; printf(“p= %.0fn”,p);3、拓展练习例3、求1!+2!+3!+.+20!分析 1、20个数求和问题,用到累加;每个数是一个阶层,又要用到累乘。 2、循环体内用到S=S+X和P=P*I赋值语句。 3、 S初值为0,P而初值为1。代码 #include main() int i,p,s; p=1; s=0; for(i=1;i=20;i+) p=p*i; s=s+p; printf(1!+2!+20!= %d,s); 四、课堂总结1、在求和求积问题中,一般都要用到累加器和累乘器。 2、循环体中的赋值语句应根据题目中要求的各项特点而定。 3、循环体内有些变量往往要事先给定初始值。 4、对变量赋值初始值的语句应放在循环体之外,即在for语句循环之外。五、课后作业1、求 xn 。 2、求 1-1/3+1/5- 的前n项和。 南通大学 徐丹