《C语言学习与应用》教学课件05模块化结构程序设计.pdf
《《C语言学习与应用》教学课件05模块化结构程序设计.pdf》由会员分享,可在线阅读,更多相关《《C语言学习与应用》教学课件05模块化结构程序设计.pdf(46页珍藏版)》请在咨信网上搜索。
C语言学习与应用教学课件任务说明本学习任务是通过若干个程序设计任务的完 成学习模块化的程序设计技能,感受同学之间的 协同合作,要求学生能根据要求编写函数,并利 用函数完成程序设计任务,学习自定义函数与主 函数之间的数据传递知识。利林5鞅催齐姗一触肥丽知诙要求。掌握库函数的调用方法。掌握函数的定义、调用和说明方法。理解实参与行参。掌握函数值的概念。0掌握主函数与函数间的数据传递。利林5鞅催齐姗一触肥帆辘能力要求0能够读懂具有自定义函数的程序。0能够完成累加和、判断素数、求绝对值的函数编写。0能够根据函数编写对应的主函数并调试通过。I 0能够判断程序运行结果的对错。*6能够修改错误的程序。利林5鞅催齐姗一触肥丽自定义函数.自定义函数的形式函数返回值的类型 函数名(类型名形参1,类型名形参2)说明部分 语句部分1自定义函数简称函数。微课学习任务五模块化程序设计_建立自己的函数库知似四效传播任务准备一、自定义函数1.自定义函数的形式自定义函数2.相关约定O在同一个程序文件中,函数名必须是唯一的,形参名只要在同 一函数中是唯一的即可。函数不能嵌套定义,即不能在一个函数内部再定义另一个函数。省略函数返回值的类型时,默认为int型,当不需要返回值时,可定义为空类型,即void。函数值的类型可以是整型、实型、字符型、指针型、结构体型。函数也可以无形参,形参及函数体中定义的变量只有在函数被 调用时才临时开辟存储单元,当退出函数时,将全部被释放,它 们都属于局部变量。3,函数值函数值通过r etur n语句返回。例如:r etur n 表达式;或r etur n(表达式);或r etur n;表达式的类型必须与函数首部所说明的类型一致,若 不一致,则由系统自行转换为函数定义时的类型。如遇到r etur n语句,程序流程则返回调用该函数处,并带回函数值。在同一函数体内,可有多处r etur n语句,当执行到某条r etur n语句时即返回调用处。函数也可无r etur n语句,当无r etur n语句时,函数执 行到结束时,再返回到调用处。_1利林5鞅催齐姗一触肥帆辘4.函数的调用函数调用的一般形式如下:函数名(实参表)各实参之间用逗号隔开,必须有确定的实参值,此调用 可作为独立的语句出现,也可以出现在各种表达式中。函数调用时应注意函数名应一致,实参与形参的个数和 类型要匹配,函数应先定义后调用,否则应在调用前有相应公 的说明。微课任务准备函数的调用:r利林5鞅催齐姗一触肥丽5.函数的说明函数说明的一般形式如下。类型名函数名(形参1的类型,形参2的类型,形参3的类型,);函数说明只说明形参的类型即可,不必写出表示形参的变量。函数说明的位置一般出现在所有函数的前面,文件包含之后,这样 在后面的所有函数中都可以调用它,函数说明是一条语句,要有分 号结尾。上应用举例5-l求肖翔m的豳效解法.#incl ude Hstdio.hMdoubl e add(doubl e,doubl e);函数说明void main()(doubl e a,b,sum;scanfC1%l f%ir,&a,&b);sum=add(a,b);函数调用,将获得的函数值赋给sum pr intf(tsum=%l fnH,sum);doubl e add(doubl e x,doubl e y)函数定义(doubl e s;s=x+y;r etur n s;输入:3.5-2.1输出:sum=1.400000闹t触肥葩输入正方形的边长,求面 积的函数解法。利林5鞅催齐姗一触肥帆辘调用函数和被调函数间的数据传递1.实参传给形参实参传给形参的数据传递方式是单向的,按值传递。应用举例5-1中出现在主函数中的调用语句“sum=add(a,b)中的a和b就是实参,a、b必有确定的值,调 用时将a、b的值各复制一份,分别赋给函数定义中的形参x和y,这就是实参向形参的传递。微课学习任务五 模块化程序设计建立自己的函数库 悠.臂楞学任务准备二、调用函数和被调函数间的数据传递实参传给形参利林5鞅催齐姗一触肥帆辘2.通过函数的返回值传递主函数中的语句“sum=add(a,b)是将获得的函数值赋给 sum,函数通过r etur n语句将函数值返回调用处,即“add(a,b)带回一个值,将这个值赋给了sum,这是函数向 主函数的数据传递。此外,还可以通过全局变量在函数和主函数之间传递信科林5鞅傩齐姗一触耻帆辘微课学习任务五 模块化程序设计.建立自己的函数库 悠茂二、调用函数和被调函数间的数据传递应用举例5-2:判断素数的函数解法。#incl ude stdio.hM#incl ude math.h 包含数学函数头文件 int ispr ime(int a)(int i;for(i=2;iy)max=x;elsemax=y;printf(较大值是:%dn,max);编程训练#includenstdio.hH voidfmax()/自定义函数/将原来主函数中的内容全部搬来intx,y,max;while(l)printf(请输入两个整数:n);scanf(n%d%du,&x,&y);if(xy)max=x;elsemax=y;printf(较大值是:dn”,max);编程训练void main()主函数中仅一条函数调用语句5-1-3编写带参数的函数。进一步改进上面的程序代码,将输入和输出部 分写在主函数中,使函数fmax(x,y)具有求两数较大 数的独立功能,即fmax2)的值是5。自定义函数 中有返回语句return,主函数中有调用自定义函数 的语句,前后呼应共同完成程序功能。编程训练#i ncIudestd io.h i nt fmax(i nta,i ntb)(i nt m;自定义函数if(ab)e I sereturn)函数返回值编程训练vo i d ma i n()(i ntx,y,max;wh i le(1)(pr i ntf(”请输入两个整数:n);scanf(,%d%dH,&x,&y);max=fmax(x,y);调用函数 pr i ntf(较大值是:dn,max);)利林5鞅催齐姗一触肥丽编程训练5-1-4借用上面的fmax函数实现输入三个整数、输出较 大数的程序。#i ncIudestd i o.hI nt fmax(i nta,i ntb)编程训练vo i d ma i n()i ntx,y,z,max;wh i le(1)pri ntf(“请输入三个整数:个);scanf(%d%d%d,&x,&y,&z);max=.第一次调用函数,将x、y间的较大值赋给maxmax=/第二次调用,用max与间的较大值更新maxpr i ntf(较大值是:dn”,max);)利林5鞅催齐姗一触肥帆辘编程训练5-1-5编写fun(x)函数,函数值是x的绝对值。#incIudestdio.h.fun(i ntx)编程训练vo i d ma i n()(i ntx,y;printf(请输入一个整数:n);scanf(H%d,&x);y=.调用函数获得x的绝对值赋给ypr i ntf(|%d|=%dn,x,y);任务二建立曲教库工作内容及要求:将功能相对独立的程序模块定义为函数,为程序中多次调用 函数提供了方便,增加了程序的可读性。如果将若干个这样的 函数写进一个文件供使用者调用,这就是函数库。编写一个有 关计算各种累加和的函数库,从中体验这种模块化程序设计的 乐趣。编写以下自定义函数。int fun1(int n),n为正整数,函数值为1-n的奇数和。int fun2(int n),n为10以内8勺正整数,函数值为n的阶乘 doubIe fun3(int n),n为正整数,函数值为 1/1-1/3+1/5-1/7+.1/n 的值。编程训练5-2-1编写fun1函数,并通过主函数对函数的调用调 试通过。#include“stdio.h int fun 1(int n)利林5鞅催齐姗一触肥帆辘编程训练void main()(printf(dn”,ftml(10);)编程训练5-2-2编写fun2函数,并通过主函数对函数的调用调试通过。#include“stdio.h int fun2(int n)利林5鞅催齐姗一触肥帆辘编程训练scanf(n%dn,&n);while(n10);mtf(n%d!=%dnu,n,fun2(n);void main()(int n;do 此循环用于剔除不合格的输入printf(“请输入一个正整数:”);因为计算较大数的阶乘时会出现 溢出,所以在主函数中加入了对数据的 筛选环节“dowhile(n10)广 O只有当n为110时,才能运行下面程 序。5-2-3编写fun3函数。计算1/1-1/3+1/5-1/7+.1/n时要单独设符号变量f初值为1,在循环中有f=-f,使千变量正负交替,例如:int i,f=1;doubIe s=0;for(i=1;i=n;i=i+2)s=s+f*1.0/i;f=-f;编程训练#incl udestdio.hdoubl e fun3(int n)Void mai n(),fun3(5);pr%iN5-2-4用上面的三个函数建立一个函数库。在VS 2010环境中创建工程,在工程中分别创建源文件和头文件,此处的头文件名为l x.h,如图57所示。科林5鞅傩齐姗一触耻帆辘图57创建头文件源文件的内容如下:#incl ude stdio.h#incl ude Ix.hvoid main()(int n;dopr intf(“请输入一个正整数:”);scanf(“d,&n);whil e(n10)pr intf(l-%d的奇娄攵和为:%dn,n?funl(n);pr intf(%d!=%dn,n,fUn2(n);pr intfCl/1-1/3+1/5-.l/n%d=%l fn,n.fun3(n);头文件I X.h的内容如下:int fun 1(int n)头文件I X.h的内容如下:int fun2(int n)头文件I X.h的内容如下:doubl e fun3(int n)祝你进步!谢- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C语言学习与应用 语言 学习 应用 教学 课件 05 模块化 结构 程序设计
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【曲****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【曲****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【曲****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【曲****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文