以下为《高中信息技术循环结构程序设计》的无排版文字预览,完整格式请下载
下载前请仔细阅读文字预览以及下方图片预览。图片预览是什么样的,下载的文档就是什么样的。
5.1 while语句
5.2 do-while语句
5.3 for 语句
5.4 break、continue和goto语句
5.5 循环的嵌套
5.6 复合结构程序举例
循环结构程序设计教学目的和基本要求:要求学生了解循环结构程序设计,掌握各种循环语句应用的特点及异同点,掌握循环嵌套及复合结构。 教学重点:各种循环语句应用的特点及异同点。 scanf(“%f”,&a);
s=s+a;
scanf(“%f”,&a);
s=s+a;
………….
这样重复一百次,然后
输出s的值。这样写显然非常麻烦。我们注意到程序中的
scanf(“%f”,&a);
s=s+a;
两句话是一直重复的,如果能用一种语句,使这两句话能自动的重复执行一百次,就可以简化了书写的麻烦,这就是循环语句。编程解决这样的一个问题:
从键盘输入一百个学生的成绩,求总成绩。从前面所学,有两种解决方法。
1.设一百个变量,分别输入学生的成绩,然后求和。
这种方法浪费内存空间,显然不实际。
2.设一个变量,每次输入一个学生成绩,累加后再输入下一个学生成绩,如下: C语言有while 、 do - while 、和for语句三种循环结构语句。
前两个称为条件循环,即根据条件来决定是否继续循环;
后一个称为计数循环,即根据设定的执行次数来执行循环。
5.1 while语句一般形式: while(表达式) 语句1.计算表达式2.如果表达式的值为非零,执行语句3. 返回第一步,重新计算表达式4. 如果表达式的值为零,则结束循环如果表达式的值一开始就为0,则语句一次也不会被执行。执行流程:while语句举例问题: 求学生的平均成绩,以输入负数成绩为结束
算法分析:
1. 定义变量score存储学生成绩,定义s=0存储累加的成绩,
定义n=0统计录入的成绩数目。
2. 输入第一个学生的score
3. 若score>=0,执行第4步,否则执行第7步
4. n++
5. s=s+score
6. 录入下一个score,并返回第3步
7. 如果n>0,输出s/n否则输出没有学生成绩main( )
{ int n=0 ;
float s=0,score;
scanf( “%f” ,&score);
while (score >= 0 )
{ n++;
s=s+score;
scanf( “%f” ,& score);
}
if(n>0) printf (“ \n %f”, s/n);
else printf(“no student score!”);
}程序:5.2 do—while语句一般形式: do{ 语句 }while (表达式);1.执行语句3.表达式的值为非零,返回第1步4.表达式的值为零,结束循环语句至少被执行一次。2.计算表达式执行流程:注意:
分号不能丢表达式main( )
{ int n=0 ;
float s=0,score;
do { scanf( “%f” ,& score);
n++;
s=s+score;
}while(score>=0);
if(n>1) printf (“ \n %f” ,(s-score)/(n-1));
else printf(“no student score!”);
}用do-while语句编写统计学生平均成绩的程序:由于do-while语句至
少要被执行一次,特
别要注意n和s的取值
问题!想想这样的一段循环语句的执行结果:
i=1;
while (i
以上为《高中信息技术循环结构程序设计》的无排版文字预览,完整格式请下载
下载前请仔细阅读上面文字预览以及下方图片预览。图片预览是什么样的,下载的文档就是什么样的。