函数、存储类和预处理程省公开课一等奖全国示范课微课金奖课件.pptx

函数、存储类和预处理程省公开课一等奖全国示范课微课金奖课件.pptx

  1. 1、本文档共53页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

课程名称:C语言程序设计

课型与教法:讲授,经过程序扩展,进行对比学习

课时:2课时

讲课题目:

第6章函数、存放类和预处理程序

基本教材:C语言程序设计(高等教育出版社)廖雷主编

教学目标与要求:经过本章学习使学生了解结构化程序设计思想,掌握函数定义方法,函数调用和参数传递;了解什么是嵌套调用和递归调用,嵌套调用和递归调用时程序执行次序,编写简单递归函数

教学难点:形参加实参意义、作用与区分,参数传递,函数递归

教学重点:函数定义和调用;形参加实参意义、作用与区分;参数按值传递;第六章函数、存放类和预处理程序;;从用户角度

标准函数(库函数):由系统提供

用户自定义函数

从函数形式

无参函数

有参函数;类型标识符函数名([参数说明部分])

{

说明部分

语句部分

};类型标识符函数名(形参表)

形参类型说明

{

说明部分

语句部分

};

函数定义不允许嵌套。

在C语言中,全部函数(包含主函数main())都是平行。一个函数定义,能够放在程序中任意位置,主函数main()之前或之后。但在一个函数函数体内,不能再定义另一个函数,即不能嵌套定义。;函数返回;

返回语句

功效:使程序控制从被调用函数返回到调用函数中,同时把返回值带给调用函数

形式:

return(表示式);或return表示式;

return;

说明:

函数中可有多个return语句

在定义函数时,对函数类型说明应与return语句中返回值类型一致。

若函数类型与return语句中表示式值类型不一致,按前者为准,自动转换------函数调用转换

不带表示式return语句位于函数体最终时,允许省略,用作函数体结束“}”会将流程返回调用函数

函数中无return语句或使用不带表示式return语句,并不是不返回一个值,而是一个不确定值。为了明确表示不返回值,能够用“void”定义成“无(空)类型”------void型函数;对被调用函数要求:

必须是已存在函数

库函数:#include*.h

用户自定义函数:函数说明

函数说明

采取函数原型方式,???被调用函数进行说明

普通形式:类型标识符函数名([参数表列]);

作用:告诉编译系统函数类型、参数个数及类型,方便检验

函数定义与函数说明不一样

函数说明位置:程序数听说明部分(函数内或外)

以下情况下,可不作函数说明

函数返值是int型

被调用函数定义出现在主调函数之前;doublefun(intn)

{

}

main()

{

fun(1);

};

在程序中,是经过对函数调用来执行函数体

函数调用普通形式:

函数名([实参表列])

说明:

调用函数时,函数名称必须与含有该功效自定义函数名称完全一致。

实参加形参个数相等,类型一致,按次序一一对应,才能正确地进行数据传递

实参表求值次序,因系统而定(TurboC自右向左)

C语言要求,在调用函数之前,必须有对应函数说明或函数定义。;函数调用语句:

例:printstar();

printf(“Hello,World!\n”);

函数表示式:

例:m=max(a,b)*2;

函数参数:

例:printf(“%d”,max(a,b));

m=max(a,max(b,c));;;形参加实参

形式参数:定义函数时函数名后面括号中变量名

实际参数:调用函数时函数名后面括号中表示式

C语言参数传递规则是按值传递

方式:函数调用时,为形参分配单元,并将实参值复制到形参中;调用结束,形参单元被释放,实参单元仍保留并维持原值

特点:

形参加实参占用不一样内存单元

单向传递

;;说明:

实参必须有确定值

形参必须指定类型

形参加实参类型一致,个数相同,按次序一一对应

若形参加实参类型不一致,自动按形参类型转换———函数调用转换

形参在函数被调用前不占内存;函数调用时为形参分配内存;调用结束,内存释放

形参加实参占用不一样内存单元

单向传递;#includestdio.h

longsum(inta,intb);

longfactorial(intn);

main()

{intn1,n2;

longa;

scanf(%d,%d,n1,n2);

a=sum(n1,n2);

printf(a=%1d,a);

}

longsum(inta,intb)

{

longc1,c2;

c1=factorial

您可能关注的文档

文档评论(0)

177****2554 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档