C语言程序设计 课件教案
第五章 循环结构
教学目的
掌握循环结构中的while语句、do while语句、for语句的用法,掌握中断语句中break和continue语句的用法。
教学要求
1. 熟练掌握while语句、do while语句、for语句 2. 熟练掌握break语句、continue语句 重点和难点
1. while语句、do while语句、for语句的使用 2. break语句、continue语句的使用
教学支撑环境与教学资源: 1. 笔记本电脑 2. VC2010 3. 投影仪
教学方法
讲授法、练习法、讨论法 授课课时 6课时 教学过程
---------------------------------AM--------------------------------- 一、课程引入
计算1+2+3+...+n有几种方法,需要多少步骤?
二、循环结构语句
什么时候用到循环结构:处理重复的问题的时候。
循环结构的三大语句:while语句、do while语句、for语句。 1.while语句
while(循环条件表达式) 循环体语句;
执行过程:只有循环条件表达式的值为真就 执行循环体语句,先判断后执行。
1
课堂练习1:
1.输出1---n之间的数 int main(void) {
int i = 1; int n = 0;
printf(\请输入n的值:\ scanf(\ 15 while(i <= n) {
printf(\ i++; }
return 0; }
2.计算m+...+n的值 int main(void) { int i = 1; int n = 0; int m = 0; int sum = 0; printf(\请依次输入m和n的值:\ scanf(\ 10 while (m <= n) { sum = sum + m; m++; } printf(\ return 0; }
2.do...while语句 do {
152
循环体语句;
}while(循环条件表达式);
执行过程:先执行循环体语句,再检查循环条件表达式的值是否为真,如果为真则继续 执行循环体语句,否则结束循环。
课堂练习2:
1.计算m+...+n的值,使用do while语句。 int main(void) { int i = 1; int n = 0; int m = 0; int sum = 0; printf(\请依次输入m和n的值:\ scanf(\ 10 15 do { sum = sum + m; m++; }while (m <= n); printf(\ return 0; }
2.输出1---n之间的数,使用do while语句。 int main(void) {
int i = 1; int n = 0;
printf(\请输入n的值:\ scanf(\ 15
3
do {
printf(\ i++;
}while(i <= n); return 0; }
while语句和do...while语句的区别:while语句是先判断后执行,do...while语句是先 执行,至少会执行一次。
课堂练习3:写出以下程序的运行结果。 int main(void) { int i = 1; int n = 11; int m = 12; int sum = 0; while (m <= n) { sum = sum + m; m++; } printf(\的值为0 return 0; }
int main(void) { int i = 1; int n = 11; int m = 12; int sum = 0; do {//先执行一次循环体语句,再去判断条件表达式的值 sum = sum + m; m++; }while (m <= n); printf(\的值为12 return 0; }
三、while与do while循环语句的练习 1.输出n---1之间的数 int main(void)
4
{ //1.定义变量 //2.输入n的值 //3.循环的语句(循环要做的事情):输出当前的数据 //4.循环退出的条件:i--;i<1或者i<=0 //5.循环的条件:i>=1或者i>0 int i = 0; int n = 0; printf(\请输入n的值:\ scanf(\ //i = n; //while(i>=1) //{ // printf(\--); //} while(n>=1) { printf(\--); } return 0; }
课堂练习4:使用do while语句实现输出n---1之间的数。
2.计算1*2*3*....*n的值(n的阶乘n!) int main(void) { //1.定义变量 //2.输入n的值 //3.循环的语句(循环要做的事情):把当前的值都*起来 //4.循环退出的条件:i++;i>n //5.循环的条件:i<=n int i = 1; int n = 0; int sum = 1; printf(\请输入n的值:\ scanf(\ while(i<=n) { sum = sum * i; i++; } printf(\的值是:%d\\n\ return 0;
5