![C程序设计课件5.12_第1页](http://file4.renrendoc.com/view/f46face098c1c36e51d63ecc0821e7d2/f46face098c1c36e51d63ecc0821e7d21.gif)
![C程序设计课件5.12_第2页](http://file4.renrendoc.com/view/f46face098c1c36e51d63ecc0821e7d2/f46face098c1c36e51d63ecc0821e7d22.gif)
![C程序设计课件5.12_第3页](http://file4.renrendoc.com/view/f46face098c1c36e51d63ecc0821e7d2/f46face098c1c36e51d63ecc0821e7d23.gif)
![C程序设计课件5.12_第4页](http://file4.renrendoc.com/view/f46face098c1c36e51d63ecc0821e7d2/f46face098c1c36e51d63ecc0821e7d24.gif)
![C程序设计课件5.12_第5页](http://file4.renrendoc.com/view/f46face098c1c36e51d63ecc0821e7d2/f46face098c1c36e51d63ecc0821e7d25.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
【例1】通过函数调用方式计算下列表达式的值。#include"stdio.h"floatfun(intn){inti,f=1;floats=0,t;
for(i=1;i<=n;i++){s+=f*t;/*将第i项累加到s*/f=-f;/*得到下一项的符号*/}returns;}voidmain(){intn;printf("n=");scanf("%d",&n);printf("%f\n",fun(n));}t=1.0/(2*i-1);/*得到第i项的绝对值*//*求前n项和函数*//*主函数*/程序1☞【例2】通过函数调用方式计算high以内的10个最大素数之和。#include"stdio.h"intfun(inthigh){intsum=0,n=0,i;while(high>=2&&n<10){}returnsum;}voidmain(){inth;printf("high=");scanf("%d",&h);printf("sum=%d\n",fun(h));}/*求素数和函数*//*主函数*/for(i=2;i<=high-1;i++)if(high%i==0)break;if(i>=high){n++;sum+=high;}high--;程序2☞【例3】通过函数调用方式计算1!~20!之和。#include"stdio.h"doublesum(intn){doubles=0,t=1;inti;
for(i=1;i<=n;i++){}returns;}voidmain(){doublem;m=sum(20);printf("%f\n",m);}t*=i;/*得到i的阶乘*/s+=t;/*将i的阶乘累加到s*//*求阶乘和函数*//*主函数*/程序3☞ddc【例4】通过函数调用方式删除字符串中的空格。
#include"stdio.h"delkg(char*s){char*p,*q;p=q=s;
while(*q){}*p='\0';}voidmain(){charstr[81];gets(str);delkg(str);printf("%s",str);}if(*q!='
')*p++=*q;/*当前字符不是空格,前移*/q++;/*删除空格函数*//*主函数*/程序4☞\0pqcge\0ge【例5】通过函数调用方式统计英文句子中单词的个数。
#include"stdio.h"fun(char*s){char*p;intword=0,num=0;p=s;
while(*p){}
returnnum;}voidmain(){charstr[81];gets(str);printf("num=%d\n",fun(str));}if(*p=='')word=0;elseif(word==0){num++;word=1;}p++;/*统计单词函数*//*主函数*/程序5☞pword=01owreou\0y(标识当前字符的前一个字符是否为空格)ahnum=0123【例6】通过函数调用方式分别计算n阶矩阵主、次对角线元素和。
voidmain(){inta[N][N],i,j;for(i=0;i<N;i++)for(j=0;j<N;j++)scanf("%d",&a[i][j]);fun(a);printf("sum1=%d\nsum2=%d\n",sum1,sum2);}#include"stdio.h"#defineN4intsum1,sum2;/*全局变量,分别存放主、次对角线元素和*/fun(intx[][N]){inti;sum1=sum2=0;
for(i=0;i<N;i++){}}/*计算主、次对角线元素和函数*//*主函数*/sum1+=x[i][i];sum2+=x[i][N-i-1];程序6☞#include"stdio.h"voidsqu(charx[],chary[]){inti=0,j=0,k;while(x[i]!='\0')
{
}}【例7】通过函数调用方式将一个字符串在另一个字符串中出现的字符删除。如:chars1[20]="Iamaboy",s2[20]="youareaboy";则在s1中删除s2存在的字符后,s1中字符串变为"Im"
。voidmain(){voidsqu(chara[],charb[]);chars1[20],s2[20];gets(s1);gets(s2);squ(s1,s2);printf("\n%s",s1);}while(y[j]!='\0'){
}i++;j=0;if(x[i]==y[j]){}elsej++;for(k=i;x[k]=x[k+1];k++);i--;break;/*删除字符函数*//*主函数*/程序7☞
②用R[i]的值与它前面的从R[i-1]开始的元素值进行比较,若R[i]的值小于它前面元素的值,则前面元素值后移一个位置,否则将R[i]的值存入空出的位置。记录的有序序列从R[1..i-1]变为R[1..i]。算法思想假设记录序列R[1..n]的状态为:
一趟直接插入排序的基本思想:监视哨
①若R[i]的值小于R[i-1]的值,将R[i]临时存储到R[0]单元,作为监视哨;i从2开始,直到n为止,重复上述操作,R[1..n]全部有序。有序序列R[1..i-1]无序序列R[i..n]R[0]有序序列R[1..i]无序序列R[i+1..n]R[i]【例8】用直接插入排序,将一组整数由小到大排序。
]
[
]
[
[
]对整数序列{70,83,100,65,10,65,9},采用直接插入排序法进行升序排序。初始序列:
R[0]70831006510659
7083第1趟:☞100651065
9第2趟:☞7083651065
9第3趟:☞100>65>6583>657065<83<1001065
9
]
[第4趟:☞100>10>1083>10701065
9>1065
]
[第5趟:☞100>65>6583>65701096565
]
[第6趟:☞100>9>983>9701096565>9>9>9100排序过程演示排序程序/*排序函数*//*主函数*/程序8☞#include"stdio.h"#defineN11/*下标为0的元素用作监视哨*/
insertsort(inta[],intn){inti,j;
for(i=2;i<n;i++)
}voidmain(){intx[N],i;for(i=1;i<N;i++)scanf("%d",x+i);insertsort(x,N);for(i=1;i<N;i++)printf("%
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度新型养老服务机构代缴社保服务协议范本
- 2025年新能源发电设备定期检查与维护合同
- 2025年度智能车库租赁及车位租赁与停车资源共享协议
- 2025年度土地承包经营权流转纠纷调解合同模板
- 2025年茶叶种植基地生态保护与修复承包协议
- 2025年度离婚协议书格式规范与编制要求
- 秘书工作计划对企业目标的支持
- 班级跨学科活动的实施路径计划
- 社团活动资源共享方案计划
- 医院文化建设增效方案计划
- 产品可行性分析报告范文
- 2024年国家公务员考试《行测》真题(地市级)及答案解析
- 2024年PIE工程师培训教程:敏捷项目管理
- 新能源汽车驱动电机及控制系统检修课件 学习情境5:电机控制器
- 地质灾害知识培训
- 传统春节习俗
- 短视频内容课件
- 医院消防安全知识培训课件
- 高考英语语法考点梳理
- 《护患沟通》课件
- 《篮球防守脚步移动技术 滑步》教案
评论
0/150
提交评论