《程序设计》 cs.stu20119 for循环的进一步讨论续 冷表达式2也不一定是关系表达式。它可以是逻辑表 达式,甚至可以是算术表达式。当表达式2是算术 表达式时,只要表达式的值为非,就执行循环体, 表达式的值为0时退出循环。 冷如果表达式2省略,即不判断循环条件,循环将无 终止地进行下去。 无终止的循环称为“死循环 冷最简单的死循环是for(;) 要结束一个无限循环,必须从键盘上输入特殊的 命令以中断程序执行并强制退出 程序设计-6
《程序设计》 cs.sjtu 2011.9 程序设计 - 6 for循环的进一步讨论 续 ❖ 表达式2也不一定是关系表达式。它可以是逻辑表 达式,甚至可以是算术表达式。当表达式2是算术 表达式时,只要表达式的值为非0,就执行循环体, 表达式的值为0时退出循环。 ❖ 如果表达式2省略,即不判断循环条件,循环将无 终止地进行下去。 ❖ 无终止的循环称为“死循环” ❖ 最简单的死循环是 for (;;); ❖ 要结束一个无限循环,必须从键盘上输入特殊的 命令以中断程序执行并强制退出
《程序设计》 cs.stu20119 For循环的进一步讨论续 表达式3也可以是任何表达式,一般为赋值表 达式或逗号表达式。表达式3是在每个循环周 期结束后对循环变量的修正。表达式3也可以 省略,此时做完循环体后直接执行表达式2 如从1加到100,可以写为 s=0;for(i=1;i<=100;){s+=i,计+;}或 S=0;for(i=l;i<=100;s+=i,i++); 程序设计-7
《程序设计》 cs.sjtu 2011.9 程序设计 - 7 For循环的进一步讨论 续 ❖ 表达式3也可以是任何表达式,一般为赋值表 达式或逗号表达式。表达式3是在每个循环周 期结束后对循环变量的修正。表达式3也可以 省略,此时做完循环体后直接执行表达式2。 ❖ 如从1加到100,可以写为 s=0; for (i=1; i<=100; ) { s += i, i++;} 或 s=0; for (i=1; i<=100; s += i, i++) ;
《程序设计》 cs.stu20119 For循环实例 小求函数f(x)=x2+5x+1在区间a,b之间的定积分 令实现思想:函数与x轴围成的区域的面积。定积分 可以通过将这块面积分解成一连串的小矩形,计 算各小矩形的面积的和而得到 a 程序设计-8
《程序设计》 cs.sjtu 2011.9 程序设计 - 8 For循环实例 ❖ 求函数 在区间[a, b]之间的定积分 ❖ 实现思想:函数与x轴围成的区域的面积。定积分 可以通过将这块面积分解成一连串的小矩形,计 算各小矩形的面积的和而得到 ( ) 5 1 2 f x = x + x + ( ) 5 1 2 f x = x + x + a b
int mainO 《程序设计》 cs.stu20119 double a, b dIt, integral =0 cou<<"请输入定积分的区间 cin>>a>>b cou<<"请输入小矩形的度: cin > dIt: for(double x=a dlt /2;x< b;x+= dlt integral +=(x*x+5*X+1)*dIts cout<"积分值为:"<< integral<<end return 0 程序设计-
《程序设计》 cs.sjtu 2011.9 程序设计 - 9 int main() { double a, b, dlt, integral = 0; cout << "请输入定积分的区间:" ; cin >> a >> b; cout << "请输入小矩形的宽度:" ; cin >> dlt; for (double x = a + dlt / 2; x < b; x += dlt) integral += (x * x + 5 * x + 1) * dlt; cout << "积分值为:" << integral << endl; return 0; }
《程序设计》 cs.stu20119 第4章循环控制 重复N次循环 Whil循环 D0.whie循环 循环的中途退出 枚举法 贪婪法 程序设计-10
《程序设计》 cs.sjtu 2011.9 程序设计 - 10 第4章 循环控制 重复N次循环 While循环 Do … while循环 循环的中途退出 枚举法 贪婪法