- 5
- 0
- 约3.89千字
- 约 28页
- 2017-05-21 发布于四川
- 举报
c语言程序逻辑09
有参函数定义的一般形式 类型标识符 函数名(参数1,参数2,……,参数n) { 变量声明部分; 功能语句块; return 表达式; } 其中: 类型标识符和函数名称为函数头; 类型标识符指明了本函数的类型,函数的类型实际上是函数返回值的类型; 在很多情况下都不要求无参函数有返回值,也就是说函数体内没有return语句时,此时函数类型符就要写为void; 函数名是由用户定义的标识符,函数名后有一个空括号,其中无参数,但括号不可少; {}中的内容称为函数体; 函数体通常由声明部分(变量的声明)、功能语句块和return语句组成; return语句是用于将表达式的结果以某种类型返回到主调函数使用的语句; ()中的参数个数视主调函数中传递多少个值或地址而定,叫形式参数。形式参数的定义与定义变量无异,一般形式为:数据类型 变量名 先看一个例子 编译运行时会出现如下错误: 错误内容是说第四行的fenshu没有定义,为什么呢|?因为fenshu变量是在main函数中定义的,chengji函数中的语句是不能访问到main函数中定义的变量,那怎么办呢? 修改上个例子 有参无返回值函数 一般格式为: void 函数名(参数1,参数2,……,参数n) { 变量声明部分; 功能语句块; } 形参的个数 上面讲过的第一个例子是一个形参,第二个例子是两个形参,现在这个例子是三个形参,这说明形参的个数可以不确定,也可以象第八章讲的没有形参。 有参有返回值函数 一般格式为: 类型标识符 函数名(参数1,参数2,……,参数n) { 变量声明部分; 功能语句块; return 表达式; } 函数的返回值 函数的值是指函数被调用之后,执行函数体中的程序段所取得的并返回给主调函数的值。对函数的值(或称函数返回值)有以下一些说明: 函数的值只能通过return语句返回给主调函数。 return 语句的一般形式为: return 表达式; 或者为: return (表达式); 该语句的功能是计算表达式的值,并返回给主调函数。在函数中允许有多个return语句,但每次调用只能有一个return 语句被执行,因此只能返回一个函数值 返回值举例 返回值举例 函数值的类型和函数定义中函数的类型应保持一致。如果两者不一致,则以函数类型为准,自动进行类型转换 返回值举例 如函数值为整型,在函数定义时可以省去类型说明 无返回值时怎么定义函数 不返回函数值的函数,可以明确定义为“空类型”,类型说明符为“void”。格式如下: void s(参数1,参数2,……,参数n) { …… } 一旦函数被定义为空类型后,就不能在主调函数中使用被调函数的函数值了。例如上面在定义s为空类型后,在主函数中写下述语句 某变量=s(参数1,参数2,……,参数n); 就是错误的。 为了使程序有良好的可读性并减少出错,凡不要求返回值的函数都应定义为空类型 函数的调用 前面已经说过,在程序中是通过对函数的调用来执行函数体的,其过程与其它语言的子程序调用相似。C语言中,函数调用的一般形式为: 无参数无返回的调用形式: 函数名(参数1,参数2,……,参数n) 无参数有返回的调用形式: 变量=函数名(参数1,参数2,……,参数n) 函数调用的方式 在C语言中,可以用以下3种方式调用函数: 在表达式中以作操作数身份出现: 例如:z=max()是一个赋值表达式,把max的返回值赋予变量z 函数本身作为一个语句出现: 函数调用的一般形式加上分号即构成函数语句。 例如:printf (%d,a); scanf (%d,b); 作为另一个函数的参数出现: 函数作为另一个函数调用的实际参数出现。这种情况是把该函数的返回值作为实参进行传送,因此要求该函数必须是有返回值的。 例如:printf(%d,max(x,y));即是把max调用的返回值又作为printf函数的实参来使用的。 被调用函数的声明和函数原型 在主调函数中调用某函数之前应对该被调函数进行说明(声明),这与使用变量之前要先进行变量说明是一样的。在主调函数中对被调函数作说明的目的是使编译系统知道被调函数返回值的类型,以便在主调函数中按此种类型对返回值作相应的处理。 其一般形式为: 类型说明符 被调函数名(参数1,参数2,……,参数n); 或为: 类型说明符 被调函数名(参数1,参数2,……,参数n); 什么情况下可以省去函数说明 如果被调函数的返回值是整型或字符型时,可以不对被调函数作说明,而直接调用。这时系统将自动对被调函数返回值按整型处理。 当被调函数的函数定义出现在主调函数之前时,在主调函数中也可以不对被调函数再作说明而直接调用。 如在所有函数定义之前,在函数外预先说明了各个函数的类型,则在以后的各
您可能关注的文档
最近下载
- 附件: 黑龙江省年“村村大学生计划(培养)” 招 生 简 章 “村村 .doc VIP
- 往年江苏省教师招聘考试教育学心理学真题及答案.docx VIP
- 国资集团考试试题及答案.docx VIP
- 部编版语文一年级下册阅读11《浪花》课件PPT.pptx VIP
- 2018海湾GST-QKP04、GST-QKP04 2气体灭火控制器说明书.docx
- 浙江省杭州市西湖区之江中学2024-2025学年高二上学期期末数学试题(解析版).docx VIP
- 人教版五年级上册数学期末测试卷及参考答案ab卷.docx VIP
- [中央]2025年中国建设银行建信养老金管理有限责任公司校园招聘20人笔试历年参考题库频考点试题附带答案详解.docx
- 海南省公务员考试模拟试题库《行测》部分及参考答案.docx VIP
- BS EN 14540-2014 国外国际规范.pdf VIP
原创力文档

文档评论(0)