C语言循环语句学案.doc
文本预览下载声明
项目三 循环程序设计—打鱼还是晒网
任务一 while语句 学案
学生自评 教师评分
专业 班级 姓名 工位号 【学习要求】
1. 了解循环结构、循环语句
2. 掌握while语句和语法形式、执行顺序及用法
3. 掌握循环结构的嵌套使用方法
【学习重点、难点】
1.while语句
2. 算法描述。
【学时安排】4学时
【学习过程】
中国有句俗话叫“三天打鱼两天晒网”。某人从1990年1月1日开始“三天打鱼两天晒网”,问这个人在1994年3月1日这一天是在“打鱼”,还是“晒网”?
课前预习及课堂学习任务
循环结构?
2、循环语句:实现循环结构的语句称为循环语句。
3、在C中,循环语句有以下三种:
for语句
while语句
do…while语句
1)while循环——当型循环
while语句的一般格式为:
while(表达式)语句
while语句的执行过程为:
(1)计算并判断表达式的值。若值为0,则结束循环,退出while语句;若值为非0,则执行循环体。
(2)转步骤(1)。
执行过程流程图:
写出以下程序的运行结果
程序 屏幕显示 注意事项 例3-1 100
例如:求 ( n
n=1
#include stdio.h
void main(void)
{ int a = 1, sum = 0;
while(a = 100){
sum += a;
a++; }
printf(%d, sum);
}
练习 求s=1+2+3+……+10
练习 用while语句实现阶乘5!。
注意“边界值”的选择!
应有使循环趋于结束的语句
程序 屏幕显示 注意事项
例3-2:统计从键盘输入的一行字符的个数。
#include stdio.h
void main(void)
{ int num=0;
printf(请输入一行字符:);
while( getchar( ) !=\n)
num++;
printf(共输入了%d个字符!,num);
}
例3-3:个位数是6,且能被3整除的5位数共有多少个?
#include stdio.h
void main(void )
{
long int n=10006;
int count=0;
while(n=99999)
{ if(n%3==0) count++;
n+=10;
} printf(“count=%d\n”,count);
}
练习:能被3整除的3位偶数共有多少个?
程序 屏幕显示 注意事项
例3-3 利用辗转相除法,求两个正整数的最大公约数
1)若j=0,则i为最大公约数
2)若j不为0,将i除以j,余数为k, i=j;j=k; 转1)
main()
{
int i,j,temp;
printf(“Enter 2 integers:”);
scanf(“%d%d”,i,j);
while(j)
{
temp=i%j;
i=j;
j=temp;
}
printf(“Gcd=%d\n”,i);
}
二、While语句-------使用要点(当型循环)
1.
while(x != 0) (
while(x == 0) (
2.当判终表达式为 时,这样的while语句为无穷循环语句,如:
while(1) 语句; // 无穷循环语句
3. while语句的循环体通常是一个复合语句,也可以是简单语句,甚至可以是一个 。
4.在循环体中应有使循环趋于 的语句,以避免“死循环”。
任务二 do-while循环——直到型循环学案
学生自评 教师评分
专业 班级 姓名 工位号 【学习要求】
1. 了解循环结构、循环语句
2. 掌握do-while语句和语法形式、执行顺序及用
显示全部