4.6 循环程序设计实例(教学课件)-高一《编程语言基础-C语言》同步精品课堂(高教版·第5版)

2023-05-17
| 23页
| 462人阅读
| 7人下载
精品

内容正文:

编程语言基础——C语言 4.6 循环程序设计实例 第4章 循环结构程序设计实例 高等教育出版社 教学目标 一 复习单循环结构、多重循环结构的命令格式及功能。 1 2 利用循环结构命令语句进行结构化程序设计。 3 培养学生对所学知识的总结概括能力。 教学重难点 二 让学生能够熟练地掌握、灵活地运用循环结构进行结构化程序设计,并且培养学生的创新能力。 1 2 够使学生将以前所学习过的知识有机地结合在一起,并且充分发挥自己的创造力,利用三种基本结构进行编程。 导入新课 三 许多实际应用的程序都要用到循环处理,在学习了本章的基本内容之后,我们在这里着重介绍两个最基本、最常用的循环处理算法----穷举法和递推法。 穷举法 “穷举法”也称为“枚举法”或“试凑法”, 即采用循环结构将所有可能出现的情况一一进行测试,判断是否满足给定的条件。 新知讲授 四 穷举法 4.6.1 题目:从键盘输入全班的学习成绩,统计出最高分、最低分和平均分。 分析:由于不知道学生人数,程序中用一个负数来作为结束输入成绩的标志。 例 极值问题 main() {int x, max, min, n; float sum=0; printf("Enter x(-1 to end): "); scanf("%d",&x); max=x; min=x; n=0; while(x>=0) {sum = sum + x; n= n+1; if(x>max) max = x; if(x<min) min = x; scanf("%d", &x); } if(max>0) printf("max=%d, min=%d, aver=%f ", max, min, sum/n); } 运行结果如下: Enter x(-1 to end): 87 76 53 99 58 -1<CR> max=99, min=53, aver=74.599998 例4-9 判断一个数是否是素数。 分析:素数又称为质数,就是除了能被1和它本身整除之外,不能被其他自然数整除的自然数。例如,自然数“36",如果要测试这个数是否为素数,从定义出发,就应该对2~35之间的数进行测试。但是,可以发现“36 %2 ==0”时,也就意味着“36 %18 ==0”,因此得到一对约数(2,18)。 对于36,这样的约数对还有(3,12),(4,9),(6,6),(9,4),(12,3),( 18,2)。当找到 (6,6)后,以后的约数就都重复了。从这个例子可以看出,循环大可不必运行到“num-1",而 是将循环的次数控制到 就行。 #include <math.h> main( ) { int num, j, tag=1, m; //设一个标志变量tag,初值为1 printf("请输入一个自然数:" ); scanf("%d", &num ); m=sqrt( num ); for(j=2;j<= m;j++) if( num %j==0) //num被j整除 { tag=0; //改变tag值 break; } if(tag==1 ) printf("%d是素数 ", num ); else printf("%d 不是素数 ", num ); } 穷举法 4.6.1 运行结果如图所示: 说明:程序中用tag变量(初值为1)来保存(判定)自然数num是否为素数,进入for循环后,一旦发现num不是素数,就将它置为0,并退出for 循环。如果for循环结束后, tag值始终为1,则num是素数,否则num不是素数。 穷举法 4.6.1 例4-10 找出100~200之间的所有素数。 分析:在例4-9的基础上,用一个嵌套的for循环来实现。100~200之间的素数一定是奇数。 #include <stdio.h> #include <math.h> main( ) { int num,j, tag, m, cnt =0; for( num= 101; num < 200; num += 2) //num增量为

资源预览图

4.6 循环程序设计实例(教学课件)-高一《编程语言基础-C语言》同步精品课堂(高教版·第5版)
1
4.6 循环程序设计实例(教学课件)-高一《编程语言基础-C语言》同步精品课堂(高教版·第5版)
2
4.6 循环程序设计实例(教学课件)-高一《编程语言基础-C语言》同步精品课堂(高教版·第5版)
3
4.6 循环程序设计实例(教学课件)-高一《编程语言基础-C语言》同步精品课堂(高教版·第5版)
4
4.6 循环程序设计实例(教学课件)-高一《编程语言基础-C语言》同步精品课堂(高教版·第5版)
5
4.6 循环程序设计实例(教学课件)-高一《编程语言基础-C语言》同步精品课堂(高教版·第5版)
6
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。