- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[整理]第5章 函数与预处理
第五章 函数与预处理(P125);§5.1.1 函数概念的引入;函数的引入;§5.1.2 函数的定义(P126);函数说明;函数体; N! 三角形面积;5.1.3 return语句(P128);return语句;5.1.4 函数声明 P130; example1:求三角形面积;实参表可包含多个参数,用逗号分开;可为常量、变量、函数调用、表达式(先求值,再将值传递给形参)。
要求实参的类型和个数要与形参一致。
可以没有参数,但圆括号一定要有,不能省略。
函数调用一般用来构成表达式。;二、函数调用过程;在函数调用时,按照书写参数的先后次序(与名字无关),将实参的值(先计算)传递给对应的形参。
要求实参和形参的类型和个数要一致。
实参将值“单向性”的“值传递”给形参。在被调函数中对形参的值的修改不会影响到实参。
当函数未被调用时,形参不占内存。当函数被调用时,为形参分配内存,并将实参的值传递??形参;函数调用结束时,释放形参所占存储空间。
各函数中的变量互不相关,可同名。;§5.3 指针与函数;#includeiostream.h
int fun(int *);
void main()
{
int a=8,b;
b=fun1(a);
couta=“a“b=“b;
}
int fun1(int *p)
{
int x=4;
*p+=x;
coutx*p“\n”;
return *p*x;
};;主调函数;主调函数;指针变量作为函数参数;用数组名作实参,就是将数组的首地址传递给形参,实参数组与形参数组占用同一段内存。
则在被调函数中对形参数组元素的进行赋值,就是对主调函数的实参数组进行操作,会在函数返回时将对数组的修改结果带回主调函数。
形参为一维数组名时,元素个数可省。
一般将数值数组也将数组中使用的元素个数传递给被调函数。
数组名作实参时,形参也可为指针。;#includeiostream.h
void sort(int []),output(int []);
void main()
{
int a[10],i;
/*INPUT*/
cout\nInput data: ;
for(i=0;i10;i++)
cina[i];
output(a);
sort(a);
output(a);
}; ; ;函数调用中的参数传递小结;§5.4 函数的嵌套调用 P151 (简单掌握);#includeiostream.h
double area(double,
double ,double);
void main()
{
double a,b,c,s;
coutinput a,b,c=;
cinabc;
s=area(a,b,c);
cout“area=“s“\n”;
};§5.5 函数的递归调用 P154 (简单掌握);用递归方法求n!;用递归方法求n!(3!);5.8 作用域与生命期;5.8.2全局变量和局部变量;全局变量与局部变量的作用域;int x,y,z;
double f1(int a)
{ int b,c;
……
}
char f2(int x,int y)
{ int i ,j;
…….
};double f1(int a)
{ int b,c;
……
}
int x,y,z;
char f2(int x,int y)
{ int i,j;
…….
}; 求一元二次方程的实根;#includeiostream.h
int x=1,y=2,z=3;
fun1 (int x)
{ int z ;
z = x+y;
y=1;
cout“x=“x“y=“y“z=“z;
return z;
}
void main()
{
int a=10;
x = fun1(a);
coutx=“ x“y=“y“z=“z“\n”;
};5.8.3 生命期;变量的存储类别;变量的存储类型;;局部变量的自动和静态存储类型举例(1);局部变量的自动和静态存储类型举例(2);局部变量的自动和静态存储类型举例(2);;//文件file1.cpp
#include iostream.h
int a; //全局变量
int power(int n); // 原型说明
void main ( )
{
int b = 3,c,d,m;
cout enter a and m:;
cin a m;
c = a*b;
coutabcendl;
d = power(m);
cout amd;
} ;作用域和生命期
您可能关注的文档
最近下载
- 三阶魔方F2L公式研究及记忆方法.pdf
- 装表接电工考试(技师)习题库(第1部分).pdf VIP
- 幼儿园-健康-危险的食品(预防食物中毒)-课件(互动版).pptx
- 人教版小学四年级音乐下册《第二单元 五十六朵花》大单元整体教学设计[2022课标].docx
- Q∕GDW 11316-2018 高压电缆线路试验规程.pdf
- 心房颤动患者左心耳封堵术后护理查房.pptx VIP
- 0723S03016-监察法学-理论课程教学大纲-申静、李芹.docx VIP
- 阜外心血管病医院手术分级目录2015版.docx VIP
- DB5328T 44-2025 珠芽黄魔芋栽培技术规程.docx VIP
- 2025年辽宁事业单位考试真题及答案.docx
文档评论(0)