第6章循环结构程序设计 例6-3求一些正数的积。 /*程序6-3,求一些正数的积* main( { float X;/*存放当前输入的数* float=1;/*存放积,初始化为1*/ scanf("%f′,&x); while(x>0) {m*=x;,/*累乘* scanf("%f",&x);/*输入下一个数,仍然放x中* printf("积=6.2%",m); 输入数据:12250 运行结果:积=12.10
第 6章 循环结构程序设计 例 6-3 求一些正数的积。 /*程序 6-3, 求一些正数的积*/ main( ) {float x; /*存放当前输入的数*/ float m=1; /*存放积, 初始化为1*/ scanf(″%f″, &x); while(x>0 {m*=x; /*累乘*/ scanf(″%f″, &x); /*输入下一个数, 仍然放x中*/ } printf(″积=6.2%″, m); } 输入数据: 1.2 2 5 0 运行结果: 积 = 12.10
第6章循环结构程序设计 例6-4计算1*2*3*.*100,实际上求100!。 /*程序6-4,计算1*2*3**100*/ main( fint F1 ouble m while (K<=100) printf("1*2*3*,*100-%f,m) 运行结果:1*2*3*.*100=9.33262154439441022e+157
第 6章 循环结构程序设计 例 6 –4 计算1*2*3*…*100, 实际上求100!。 /*程序 6-4, 计算1*2*3*…*100*/ main( ) {int i=1; double m=1; while (i<=100) {m*=i; i++; } printf(″1*2*3*…*100=%f″, m); } 运行结果: 1*2*3*…*100= 9.332 621 544 394 410 22e+157
第6章循环结构程序设计 62do- while语句 do-Whle语句是 while语句的倒装形式 格式:do语句 while(条件表达式) 功能:先执行循环体,再计算条件表达式的值。当 条件表达式的值为真时,代表循环的条件成立,继续执 行循环。当条件表达式的值为假,代表循环的条件不成 立,退出循环 do- while语句是反复执行循环,直到循环的条件不 成立
第 6章 循环结构程序设计 6.2 do-while语句 do-while语句是while语句的倒装形式。 格式: do 语句 while (条件表达式) 功能: 先执行循环体, 再计算条件表达式的值。当 条件表达式的值为真时, 代表循环的条件成立, 继续执 行循环。当条件表达式的值为假, 代表循环的条件不成 立, 退出循环。 do-while语句是反复执行循环, 直到循环的条件不 成立
第6章循环结构程序设计 说明 (1)do- while语句是先执行,后判断。如果循环的条 件一开始就不成立,循环也将执行一次 (2)与 while语句一样,循环体中同样必须有改变循环 条件的语句,否则循环不能终止,形成无限循环 (3)循环体为多条语句时必须采用复合语句 (4)当循环条件为永真条件时,将变成无限循环。可 利用 break语句终止循环的执行 (5)与其它高级语言不同,C语言的直到循环与当循环 的条件是同一的,其它高级语言中是互为相反条件
第 6章 循环结构程序设计 说明: (1) do-while语句是先执行, 后判断。如果循环的条 件一开始就不成立, 循环也将执行一次。 (2) 与while语句一样, 循环体中同样必须有改变循环 条件的语句, 否则循环不能终止, 形成无限循环。 (3) 循环体为多条语句时必须采用复合语句。 (4) 当循环条件为永真条件时, 将变成无限循环。可 利用break语句终止循环的执行。 (5) 与其它高级语言不同, C语言的直到循环与当循环 的条件是同一的, 其它高级语言中是互为相反条件
第6章循环结构程序设计 (6)等价的语句加goto语句形式如下 循环体; 标号:if(条件表达式 循环体; goto标号
第 6章 循环结构程序设计 (6) 等价的if语句加goto语句形式如下: 循环体; 标号: if {循环体; goto标号; }