while语句说明while语句和for语句都是在循环前先判断条件把for语句改写成while语句for(表达式1;表达式2;表达式3)循环体语句表达式1;while(表达式2)for的循环体语句;表达式3;1
while 语句和for语句 都是在循环前先判断条件 while 语句说明 表达式1; while (表达式2) { for的循环体语句; 表达式3; } 把for语句改写成while语句 for(表达式1; 表达式2; 表达式3) 循环体语句
while和for的比较for (i= 1; i<= 10; i++)sum=sum+i;i= 1;循环变量赋初值循环条件while (i<= 10)sum=sum+ i循环体i++;循环变量的改变7
while 和 for 的比较 for (i = 1; i <= 10; i++) sum = sum + i; i = 1; 循环变量赋初值 while (i <= 10){ 循环条件 sum = sum + i; i++; 循环变量的改变 } 循环体
例4-2从键盘输入一批学生的成绩,计算平均成绩,并统计不及格学生的人数。分析:口求累加和口确定循环条件不知道输入数据的个数,无法事先确定循环次数用一个特殊的数据作为正常输入数据的结束标志,比如选用一个负数作为结束标志。口循环的三种常见的控制方式(计数控制的循环、条件控制的循环、标记控制的循环)
例4-2 从键盘输入一批学生的成绩,计算平均 成绩,并统计不及格学生的人数。 分析: 求累加和 确定循环条件 ◼ 不知道输入数据的个数,无法事先确定循环次数 ◼ 用一个特殊的数据作为正常输入数据的结束标志, 比如选用一个负数作为结束标志。 循环的三种常见的控制方式(计数控制的循环、 条件控制的循环、标记控制的循环)
#include<stdio.h>Int main(void)Enter grades: 67 88 73 54 82 -1 intnum;doublegrade, total;Grade average is 72.80num = 0; total = 0;Numberof failures is 1printf("Enter grades: In");scanf("%lf", &grade);/*输入第1个数*/*输入负数,循环结束*while(grade>=0)(total = total + grade;num++;if(grade<60) count++;scanf ("%lf", &grade);1if(num != 0) {printf("Grade average is %.2fin", total/num);printf("Number offailuresis%din",count);1elseprintf(" Grade average is Oln");return 0;1D
#include <stdio.h> Int main(void) { int num; doublegrade, total; num = 0; total = 0; printf(“Enter grades: \n"); scanf("%lf", &grade); /* 输入第1个数*/ while (grade >= 0) { /* 输入负数,循环结束 */ total = total + grade; num++; if(grade<60) count++; scanf (“%lf”, &grade); } if(num != 0) { printf(“Grade average is %.2f\n", total/num); printf("Number of failures is %d\n", count); } else printf(" Grade average is 0\n"); return 0; } Enter grades: 67 88 73 54 82 -1 Grade average is 72.80 Number of failures is 1
4.2统计一个整数的位数例4-3从键盘读入一个整数,统计该数的位数。4.2.1程序解析4.2.2 do-while语句
4.2 统计一个整数的位数 例4-3 从键盘读入一个整数,统计该数的 位数。 4.2.1 程序解析 4.2.2 do - while语句