收藏 分享(赏)

第四章循环结构.doc

上传人:11xg27ws 文档编号:7241320 上传时间:2019-05-10 格式:DOC 页数:7 大小:71.50KB
下载 相关 举报
第四章循环结构.doc_第1页
第1页 / 共7页
第四章循环结构.doc_第2页
第2页 / 共7页
第四章循环结构.doc_第3页
第3页 / 共7页
第四章循环结构.doc_第4页
第4页 / 共7页
第四章循环结构.doc_第5页
第5页 / 共7页
点击查看更多>>
资源描述

1、第 四 章 循环结构4.1 用格里高利公式求 的近似值 (while 语句)4.2 统计一个整数的位数 (do-while 语句)4.3 判断素数 (break 和 continue 语句)4.4 求 1!+2!+.+100! (循环嵌套)4.5 循环结构程序设计本章要点什么是循环? 为什么要使用循环 ? 如何实现循环?实现循环时,如何确定循环条件和循环体?怎样使用 while 和 do-while 语句实现次数不确定的循环?while 和 do-while 语句有什么不同?如何使用 break 语句处理多循环条件 ?如何实现多重循环?4.1 用格里高利公式求 的近似值使用格里高利公式求 的近

2、似值,要求精确到最后一项的绝对值小于 104。4.1.1 程序解析4.1.2 while 语句 4.1.3 输入一批学生的成绩,统计平均分4.1.1 程序解析求 的近似值#include int main(void)int denominator, flag; double item, pi;flag = 1; denominator = 1 ; item = 1.0; pi = 0;while(fabs (item) = 0.0001) item = flag * 1.0 / denominator; pi = pi + item; flag = -flag; denominator = d

3、enominator +2; pi = pi * 4; printf ( “pi = %fn”, pi);return 0;4.1.2 while 语句while (条件)循环体语句; while 语句说明while 语句和 for 语句都是在循环前先判断条件 while 和 for 的比较for (i = 1; i Int main(void) int num; double grade, total; num = 0; total = 0;printf(“Enter grades: n“); scanf(“%lf“, /* 输入第 1 个数*/while (mark = 0) /* 输入负

4、数,循环结束 */total = total + grade; num+; scanf (“%lf”, if(num != 0)printf(“Grade average is %.2fn“, total/num);elseprintf(“ Grade average is 0n“);return 0;4.2 统计一个整数的位数从键盘读入一个整数,统计该数的位数。4.2.1 程序解析4.2.2 do - while 语句 4.2.3 循环语句的选择4.2.1 程序解析统计一个整数的位数int main(void) int count, number; count = 0;printf(“Ent

5、er a number: “);scanf (“%d“, if (number m/2 ) printf(“%d is a prime number! n“, m); elseprintf(“No!n“); break 语句while(exp)语句 1if (expb) break;语句 2continue 语句while(exp)语句 1if (expb) continue;语句 2break 和 continue#include “stdio.h“int main(void) char c;int i;for (i = 0; i double fact (int n); int main(

6、void) int i;double sum;sum = 0;for(i = 1; i int main(void) int i, j;double item, sum; /* item 存放阶乘 */sum = 0;for(i = 1; i int main(void) int i, mark, max, n; printf(“Enter n: “); scanf (“%d“, printf(“Enter %d marks: “, n);scanf (“%d“, /* 读入第一个成绩 */max = mark; /* 假设第一个成绩是最高分 */for (i = 1; i int main(

7、void) int mark, max; printf(“Enter marks:“); scanf (“%d“, /* 读入第一个成绩 */max = mark; /* 假设第一个成绩最高分 */while (mark = 0)if(max int main(void) int mark, max; max = -1; /* 给 max 赋一个小初值 */printf(“Enter marks: “); do scanf (“%d“, if (max = 0); printf(“Max = %dn“, max);例 4-8 将一个正整数逆序输出确定:循环条件和循环体(循环不变式 )例 4-9

8、 求 500 以内的全部素数,每行输出 10 个for (m = 2; m #include int main(void) int count, i, m, n; count = 0; for (m = 2; m n) /* 如果 m 是素数 */printf(“%6d“, m); count+; if (count %10 = 0) printf(“n”); 例 4-10 求 Fibonacci 序列:1,1,2,3,5,8,13, 1, 1, 2, 3, 5, 8, 13, x1 x2 xx1 x2 x例 4-11 古典算术问题搬砖头某地需要搬运砖块,已知男人一人搬 3 块,女人一人搬 2 块,小孩两人搬一块。问用 45 人正好搬 45 块砖,有多少种搬法?例 4-11 源程序(2)for (men = 0; men = 15; men+)for (women = 0; women = 22; women+)child = 45 women men; if (men * 3 + women * 2 + child * 0.5 = 45)printf(“men=%d women=%d child=%dn“, men, women, child);4.5 循环程序设计习题习题 4-9 输入一个整数,从高位开始逐个数字输出。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报