c语言常用算法ppt课件.ppt

c语言常用算法ppt课件.ppt

ID:58886254

大小:799.50 KB

页数:83页

时间:2020-09-30

c语言常用算法ppt课件.ppt_第1页
c语言常用算法ppt课件.ppt_第2页
c语言常用算法ppt课件.ppt_第3页
c语言常用算法ppt课件.ppt_第4页
c语言常用算法ppt课件.ppt_第5页
资源描述:

《c语言常用算法ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第3章常用算法的综合应用素数问题最大最小平均值问题Fibnacci数列问题最大公约与最小公倍数排序问题逆序和转置多项式问题数字分离迭代问题其他问题3.1素数问题标志变量法非正常出口法筛选法例1用标志变量法判断一个整数是否为素数。#include"math.h"#include"stdio.h"intfun(intn){inti,k=1;if(n<2)k=0;for(i=2;i<=sqrt(n);i++)if(n%i==0)k=0;returnk;}main(){inti,k=0;for(i=1;i<=100;i++)if(fun(i)==1){k++;if((k-1)%10==0)pri

2、ntf("");printf("%5d",i);}printf("");}2357111317192329313741434753596167717379838997例2用循环的非正常出口法求素数。调用函数打印[100,200]间的素数。#include"stdio.h"intfun(intn){inti;for(i=2;i<=n-1;i++)if(n%i==0)break;if(i==n)return1;elsereturn0;}main(){inti,k=0;for(i=100;i<=200;i++)if(fun(i)==1){if(k%10==0)printf("");

3、printf("%5d",i);k++;}printf("");}例3用筛选法求1000以内的全部素数,把产生的素数存放在数据文件中。筛选法是古希腊著名数学家埃拉托色尼(Eratosthenes)提出的一种批量求素数的方法,他在一张纸上写下了1~1000的全部整数,然后按照下面的方法把一些数挖掉:①先把1挖掉;②从2开始,依次用纸上剩下的数去除其后面的各数,把凡是能被整除的数再挖掉。这样,纸被挖成了一个筛子,而剩下的数就是2~1000的全部素数。#include"stdio.h"main(){inta[1001],i,j,k=0;FILE*fp;fp=fopen("E:\b1.tx

4、t","w");for(i=2;i<=1000;i++)a[i]=i;for(i=2;i<=32;i++)for(j=i+i;j<=1000;j=j+i)a[j]=0;for(i=2;i<=1000;i++)if(a[i]!=0){if(k==10){fprintf(fp,"");k=0;}fprintf(fp,"%5d",a[i]);k++;}fclose(fp);}思考:1.输出格式的控制采用了比较特别的方式,k不是一直加下去,与前面的两个例题有所不同。2.把素数的结果直接写入数据文件,如何增加适当语句使得结果同时在屏幕上也显示一份。例3-5编程序求3至39之间满足下列条件的各组

5、素数:每组有3个素数,第2个比第1个大2,第3个比第2个大4。例如5、7、11就是满足条件的一组。#include"stdio.h"main(){inti,j,k1,k2,k3;for(i=3;i<=33;i+=2){k1=1;for(j=2;j

6、下列程序中,函数fun的功能是:找出一个大于给定整数m且紧随m的素数,并作为函数值返回。#include#includeintfun(intm)/******FOUND******/{inti;k;for(i=m+1;;i++){for(k=2;k

7、,fun(n));getch();}inti,k;i%k==0k==i素数27.fun功能是:找出大于m的最小素数,并将其作为函数值返回。#includeintfun(intm){inti,k;for(i=m+1;;i++){/******FOUND******/for(k=1;k

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。