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

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

ID:59476220

大小:146.50 KB

页数:35页

时间:2020-09-14

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

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

1、C语言常用算法一、数值计算1、累加2、累乘(阶乘)3、交换4、最大/最小值5、数位拆解6、数组移动7、级数计算8、素数判断二、数据查找1、顺序查找2、穷举查找三、排序算法1、冒泡排序2、选择排序3、插入排序4、归并排序21、累加累加算法的要领是形如“s=s+A”的累加式,此式必须出现在循环中才能被反复执行,从而实现累加功能。“A”通常是有规律变化的表达式,s在进入循环前必须获得合适的初值,通常为0。一、数值计算3例g-1、求1+2+3+……+100的和。main(){inti,s;s=0;i=1;while(i<=100){s=s+i;i=i+1;}pr

2、intf(“s=%d",s);}【解析】程序中红字部分为累加式的典型形式,赋值号左右都出现的变量称为累加器,其中“i=i+1”为特殊的累加式,每次累加的值为1,这样的累加器又称为计数器。main(){inti,s;s=0;i=1;for(i=1;i<=100;i++)s=s+i;printf(“s=%d",s);}42、累乘、阶乘累乘算法的要领是形如“s=s*A”的累乘式,此式必须出现在循环中才能被反复执行,从而实现累乘功能。“A”通常是有规律变化的表达式,s在进入循环前必须获得合适的初值,通常为1。5例g-2、求10!【分析】10!=1×2×3

3、×……×10main(){inti;longs;s=1;i=1;while(i<=10){s=s*i;i=i+1;}printf("1*2*3*...*10=%ld",s);}63、交换两量交换借助第三者。如同交换两个瓶子里的墨水,必须借助第三个空瓶子。例g-3、任意读入两个整数,将二者的值交换后输出。main(){inta,b,t;scanf("%d%d",&a,&b);printf("%d,%d",a,b);t=a;a=b;b=t;printf("%d,%d",a,b);}【解析】程序中加粗部分为算法的核心,其中t为中间变量,起到“空瓶子

4、”的作用。注意:三句赋值语句赋值号左右的各量之间的关系!7【应用】例g-4、任意读入三个整数,然后按从小到大的顺序输出。例C12_102main(){inta,b,c,t;scanf("%d%d%d",&a,&b,&c);if(a>b){t=a;a=b;b=t;}if(a>c){t=a;a=c;c=t;}if(b>c){t=b;b=c;c=t;}printf("%d,%d,%d",a,b,c);}84、求最大值/最小值【例g-5】用数组a存放随机产生的20个整数,然后输出其最大值和最小值。#defineN20main(){inta[N],i,max,

5、min;for(i=0;imax)max=a[i];if(a[i]a[max]

6、)max=i;if(a[i]

7、分位:65824/100%10=8千分位:65824/1000%10=5万位:65824/10000%10=611【例g-7】输出一个任意整数的各个位数。#defineN10main(){inta[N],i=0;longx;scanf("%ld",&x);while(x>0L){a[i]=x%10;x/=10;i++;}for(i--;i>=0;i--)printf("%d",a[i]);}12【例g-8】用随机函数产生100个[0,99]范围内的随机整数,统计个位上的数字分别为1,2,3,4,5,6,7,8,9,0的数的个数并打印出来。【分析】用数组a

8、[100]存放产生的确100个随机整数,数组x[10]来存放个位上的数字分别为1

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

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

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