欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    C程序设计C程序设计 (33).pdf

    • 资源ID:52748712       资源大小:583.28KB        全文页数:31页
    • 资源格式: PDF        下载积分:10金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要10金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C程序设计C程序设计 (33).pdf

    C C程序设计程序设计Programming in CProgramming in C调用函数返回与参数传递调用函数返回与参数传递1、函数定义2、函数返回C C程序设计程序设计程序设计程序设计3 3第第4 4章章 函数函数函数(function)是C语言程序中的基本单位,是完成特定任务、实现特定功能的语句序列的集合。在面向过程开发中,函数是应用程序的主体框架;在面向对象开发中,函数是重要的编程模式。4 4第第4 4章章 函数函数第1个目标:使用函数。C语言发展至今,已累积大量函数库,这些经过多年使用、反复测试、具有强大功能的函数库已成为程序员开发软件不可缺少的工具。使用函数库可以加快开发周期、提高程序可维护性和稳定性,更主要的是让程序员拥有所期望的功能和性能。要准确运用这些函数库,必须掌握函数的使用方法,包括函数接口、函数调用等。5 5第第4 4章章 函数函数第2个目标:设计函数。将语句集合为函数,将数据封装到函数,是结构化程序设计模块化的要求,是面向对象程序设计的必要环节。随着现实问题越来越复杂,程序规模越来越庞大,如何达到“更多的复用、更少的代码”,是设计函数的主要目的。6 6第第4 4章章 函数函数从使用的角度来看,函数可以分为系统函数和用户自定义函数。系统函数包括标准库和专业库函数,软件开发领域的应用程序接口API(application programming interface),软件开发包工具SDK(software development kit)属于系统函数范畴。7 74.1.1 4.1.1 函数定义的一般形式函数定义的一般形式函数定义的一般形式为:其中大括号称为函数体,第一行称为函数头。返回类型返回类型 函数名函数名(形式参数列表形式参数列表)函数体函数体 8 84.1.1 4.1.1 函数定义的一般形式函数定义的一般形式C语言不允许在函数体内嵌套定义函数,例如:返回类型返回类型 函数名函数名(形式参数列表形式参数列表)返回类型返回类型 函数名函数名(形式参数列表形式参数列表)/错误,不允许嵌套定义/错误,不允许嵌套定义 函数体函数体9 94.1.1 4.1.1 函数定义的一般形式函数定义的一般形式函数定义本质上就是函数的实现,包括:确定函数名;确定形式参数列表;确定返回类型;编写函数体代码。1函数名实现函数需要确定函数名,以便使用函数时能够按名引用。函数名遵守C语言标识符规则,通常要“见其名知其意”、“名副其实”。如定义求最大值的函数名为max。10104.1.1 4.1.1 函数定义的一般形式函数定义的一般形式2形式参数列表实现函数需要确定有无形式参数、有多少形式参数、有什么类型的形式参数。形式参数列表是函数与调用者进行数据交换的途径,一般形式为:多个参数用逗号(,)分隔,且每个参数都要有自己的类型说明,即使类型相同的参数也是如此。类型1类型1 参数名1参数名1,类型2类型2 参数名2参数名2,.,.11114.1.1 4.1.1 函数定义的一般形式函数定义的一般形式例如:函数fun有3个参数,不能因为x和y参数类型相同就写为:intint funfun(intint x x,y y,doubledouble m m)intint funfun(intint x x,intint y y,doubledouble m m)/形式参数列表为3个参数/形式参数列表为3个参数 returnreturn m m 12.512.5?x?x:y y;12124.1.1 4.1.1 函数定义的一般形式函数定义的一般形式函数可以没有形式参数,定义形式为:或返回类型返回类型 函数名函数名()()函数体函数体 返回类型返回类型 函数名函数名(voidvoid)函数体函数体 13134.1.1 4.1.1 函数定义的一般形式函数定义的一般形式即形式参数列表要么不写,要么写void。这里的void不是指空类型,而是表示没有参数。例如:没有形式参数列表的函数称为无参函数。有形式参数列表的函数称为有参函数。intint funfun()()或或 intint funfun(voidvoid)14144.1.1 4.1.1 函数定义的一般形式函数定义的一般形式3返回类型实现函数需要确定有无返回数据、返回什么类型的数据。返回值是函数向调用者返回数据的途径之一,本质上函数返回值也起到与调用者进行数据交换的作用,只不过它是单向的,即从函数向调用者传递,故称返回。15154.1.1 4.1.1 函数定义的一般形式函数定义的一般形式返回类型可以是C语言除数组之外的内置数据类型或自定义类型。C语言规定一个函数如果没有给出返回类型,则默认是int型,所以:和完全是等价的。funfun(intint x x,intint y y,doubledouble m m)intint funfun(intint x x,intint y y,doubledouble m m)16164.1.1 4.1.1 函数定义的一般形式函数定义的一般形式函数可以不返回数据,此时返回类型应写成void,表示没有返回值,其形式为:voidvoid 函数名函数名(形式参数列表形式参数列表)函数体函数体 17174.1.1 4.1.1 函数定义的一般形式函数定义的一般形式函数名、形式参数列表、返回类型组成的函数头,也称为函数接口(interface),一组适合应用程序开发的函数接口统称为应用程序接口API。18184.1.1 4.1.1 函数定义的一般形式函数定义的一般形式若函数A调用函数B,称函数A为主调函数,称函数B为被调函数,将函数A中调用函数B的代码位置称为调用点。intint B B(intint x x,intint y y)/被调函数/被调函数.voidvoid A A(voidvoid)/主调函数/主调函数 B B(2 2,3 3););/函数A中调用函数B,此处为调用点/函数A中调用函数B,此处为调用点 19194.1.1 4.1.1 函数定义的一般形式函数定义的一般形式4函数体实现函数最重要的是编写函数体。函数体(function body)包含声明部分和执行语句,是一组能实现特定功能的语句序列的集合。20204.1.1 4.1.1 函数定义的一般形式函数定义的一般形式在函数体内部可以声明需要用到的数据类型,定义需要的变量或数据对象;可以使用任意结构的程序流程,可以使用简单语句、复合语句、控制语句及语句嵌套,还可以调用别的函数;总之,动用一切程序设计措施,达到实现函数功能的目的。21214.1.1 4.1.1 函数定义的一般形式函数定义的一般形式如果函数体内部无任何内容,称为空函数,定义形式为:空函数的意义是先提供一个有函数接口而无功能实现的“假想函数”在程序流程中“占位”,使程序框架完整,其后再逐步完善,这是结构化程序设计的常用方法。返回类型返回类型 函数名函数名(形式参数列表形式参数列表)22224.1.1 4.1.1 函数定义的一般形式函数定义的一般形式【例4.1】编写判断m是否为素数的函数,并在主函数调用它。23234.1.1 4.1.1 函数定义的一般形式函数定义的一般形式例4.11#include#include 2 intint IsPrimeIsPrime(intint m m)/求素数函数/求素数函数3 /枚举法求m是否素数/枚举法求m是否素数4 intint i i;5 forfor(i i=2 2;i i=m m-1 1;i i+)+)6 ifif(m m%i i=0 0)returnreturn 0 0;/不是素数返回0/不是素数返回07 returnreturn 1 1;/是素数返回1/是素数返回18 9 intint mainmain()()10 11 intint m m;12 scanfscanf(%d,&(%d,&m m););13 ifif(IsPrimeIsPrime(m m)printfprintf(Yes(Yesnn););/是素数输出Yes/是素数输出Yes14 elseelse printfprintf(No(Nonn););/不是素数输出No/不是素数输出No15 returnreturn 0 0;24244.1.2 4.1.2 函数返回函数返回函数调用时,程序执行流程就跳转到函数中来。在函数内部,执行流程是从函数体的第一个语句开始往下执行,一直执行到函数体右括号“”为止,称为自然结束。如果中间遇到return语句,函数会立即返回,函数内的执行流程也就结束了。25254.1.2 4.1.2 函数返回函数返回return语句有两种形式:无返回值语句:有返回值语句:无论函数是自然结束,或是使用return语句结束,返回值总是按返回类型来处理的。returnreturn;returnreturn 表达式表达式;26264.1.2 4.1.2 函数返回函数返回1无返回值函数当函数的返回类型是void时,表明函数无返回值。这种情况下,函数是可以自然结束的。而要用return语句结束时,只能使用第一种return语句形式。没有返回值的函数,在调用处是不能按表达式来调用函数的,只能按语句形式调用函数,因为函数没有返回值也就不能参与表达式运算。27274.1.2 4.1.2 函数返回函数返回2有返回值函数当函数的返回类型不是void,表明函数有返回值。这种情况下,函数是可以自然结束的。但由于函数是自然结束,不会明确做什么,此时函数返回的值是与返回类型相同但内容却是随机的一个值。这样的返回值一般无实际意义。如果要用return语句结束,这种情况下只能使用第二种return语句形式,即return必须返回值。此时函数返回的值是与返回类型相同、由表达式计算出来的一个值。28284.1.2 4.1.2 函数返回函数返回关于函数返回值的说明:(1)如果需要函数返回明确的值,就必须将函数定义为非void的返回类型,而且函数用第二种return语句形式返回。(2)如果不需要函数返回值,那么将函数定义为void类型,函数既可以自然结束,又可以用第一种return语句形式返回。(3)一个函数可以使用多个return语句,执行到哪个,哪个return语句就起作用。29294.1.2 4.1.2 函数返回函数返回(4)函数返回值的类型是由函数定义中的返回类型来决定的。当return表达式的类型与此不相同时,返回时会进行隐式类型转换;如果不能转换,则出现编译错误。(5)函数返回值多数情况下是按值传送的方式处理的,即将返回的数据对象的内存数据完全复制到临时数据对象中。对于数据量大的数据类型,这样的返回是耗时的。30304.1.2 4.1.2 函数返回函数返回(6)main函数是由操作系统启动例程调用的,所以main函数的return语句将结束程序运行。main函数的返回值用于向操作系统返回程序的退出状态,如果返回0,表示程序正常退出,否则表示程序异常退出。结束结束

    注意事项

    本文(C程序设计C程序设计 (33).pdf)为本站会员(刘静)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开