欢迎来到天天文库
浏览记录
ID:57057037
大小:1.84 MB
页数:95页
时间:2020-07-30
《C语言学习,强化总结课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、函数函数概述函数的概念函数其实就是一段可以重复调用的、功能相对独立完整的程序段。C是函数式语言必须有且只能有一个名为main的主函数C程序的执行总是从main函数开始,在main中结束函数不能嵌套定义,可以嵌套调用2、函数的分类从用户角度标准函数(库函数):由系统提供用户自定义函数从函数形式无参数无返回值无参数有返回值有参数无返回值有参数有返回值使用库函数应注意:1、函数功能2、函数参数的数目和顺序,及各参数意义和类型3、函数返回值意义和类型4、需要使用的包含文件函数调用和函数说明函数调用函数语句:例:printstar();printf(“Hello,World!”);函
2、数表达式:例:m=max(a,b)*2;函数参数:例:printf(“%d”,max(a,b));m=max(a,max(b,c));函数说明对被调用函数要求:必须是已存在的函数库函数:#include<*.h>用户自定义函数:函数类型说明函数说明一般形式:函数类型函数名(形参类型[形参名],…..);或函数类型函数名();作用:告诉编译系统函数类型、参数个数及类型,以便检验函数定义与函数说明不同函数说明位置:程序的数据说明部分(函数内或外)下列情况下,可不作函数说明若函数返值是char或int型,系统自动按int型处理被调用函数定义出现在主调函数之前有些系统(如BC、VC)要
3、求函数说明指出函数返值类型和形参类型,并且对void和int型函数也要进行函数说明函数参数的传递方式1、值传递方式根据实参传递给形参值的不同,通常有值传递方式和地址传递方式两种。方式:函数调用时,为形参分配单元,并将实参的值复制到形参中;调用结束,形参单元被释放,实参单元仍保留并维持原值。特点:①形参与实参占用不同的内存单元②单向传递2、地址传递方式方式:函数调用时,将数据的存储地址作为参数传递给形参特点:①形参与实参占用同样的存储单元②双向传递③实参和形参必须是地址常量或变量用数组名作为函数参数时还应注意以下几点:形参数组和实参数组的类型必须一致,否则将引起错误。形参数组和实
4、参数组的长度可以不相同,因为在调用时,只传送首地址而不检查形参数组的长度。多维数组也可以作为函数的参数。在函数定义时对形参数组可以指定每一维的长度,也可省去第一维的长度。除了用数组名作为函数参数来实现参数的地址传递以外,其实还有一种应用更广的地址传递方法,那就是用指针变量来作为函数的形参,其具体使用方法将在第9章作详细讨论。变量的作用域和生存期1、作用域和生存期的基本概念变量的作用域即变量的作用范围(或有效范围)。表现为变量有的可以在整个程序或其它程序中进行引用,有的则只能在局部范围内引用。按其作用域范围可分为两种:即局部变量和全局变量变量的生存期变量从被生成到被撤消的这段时间
5、。实际上就是变量占用内存的时间。按其生存期可分为两种:即动态变量和静态变量变量只能在其生存期内被引用,变量的作用域直接影响变量的生存期。作用域和生存期是从空间和时间的角度来体现变量的特性。2、局部变量作用域和生存期定义在函数内作定义说明的变量,也称为内部变量。作用域仅限于函数内,离开函数后不可再引用。生存期从函数被调用的时刻到函数返回调用处的时刻(静态局部变量除外)。intf1(intx,inty){intz;z=x>y?x:y;return(z);}voidf2(){printf("%d",z);}局部变量变量x、y、z的作用域引用错误!3、全局变量作用域和生存期定义在函
6、数外部作定义说明的变量,也称为外部变量。它不属于哪一个函数,而属于一个源程序文件。作用域从定义变量的位置开始到本源文件结束,及有extern说明的其它源文件。生存期与程序相同。即从程序开始执行到程序终止的这段时间内,全局变量都有效。#include#includeintsign();//计算数n的平方根floatsqr(){if(n>0)return(sqrt(n));elsereturn(-1);}floatn=0;voidmain(){ints;floatt;scanf("%f",&n);s=sign();//取符号t=sqr();//取平
7、方根printf("s=%dt=%f",s,t);}//取数n的符号intsign(){intr=0;if(n>0)r=1;if(n<0)r=-1;return(r);}定义全局变量,并赋初值局部变量全局变量n的作用域局部变量s、t的作用域局部变量局部变量r的作用域错误!变量的存储类型概述变量是对程序中数据的存储空间的抽象变量的属性①数据类型:变量所持有的数据的性质(操作属性)。规定了它们的取值范围和可参与的运算。②存储类型:规定了变量占用内存空间的方式,也称为存储方式。存储器类型:寄存器、
此文档下载收益归作者所有