1 / 47
文档名称:

第4章函数.ppt

格式:ppt   页数:47
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

第4章函数.ppt

上传人:中国课件站 2011/10/11 文件大小:0 KB

下载得到文件列表

第4章函数.ppt

文档介绍

文档介绍:第5章函数
函数的定义
函数的调用
指针与函数
局部变量和全局变量
变量的存储类型
内联函数
函数重载
函数模板
返回
§5-1 函数定义
函数体
函数体空时为空函数
例:
int max(int x,int y)
{
return x>y?x:y;
}
数据类型函数名(形参列表)
{
语句

}
函数值的类型
缺省为int 类型
若函数无返回值,则类型为void
列表为空时,为无参函数
但圆括号必须有,如main函数
函数说明
返回
void main()
{
.
.
.
}
有参函数

无参函数
N! 三角形面积
long power(int n)
{
int i;
long l;
for (i=1;i<=n;i++)
l*=i;
return l;
}
float area(float x,float y,float z)
{
float s;
if (x+y<z||x+z<y||y+z<x)
return 0;
s=(x+y+z)/2;
float t= sqrt(s*(s-x)*(s-y)*(s-z));
return t;
}
返回/return语句
语句格式:
return 表达式;
return (表达式);
流程控制语句,从被调用函数返回到调用函数,并计算表达式的值作为函数的返回值。( 注意:只能返回一个值)
函数值的类型:以函数定义的类型为准,若不同,需将return语句表达式的值转换类型。
在一个函数中可有多个return语句,但每次被调用只能执行一个。例,判断素数(或求三角形面积)
int sushu(int n)
{
int k,i;
k=sqrt((double)n);
for (i=2;i<=k;i++)
if (!(n%i)) return 0;
return 1;
}
#include<>
#include<>
void main()
{
int i;
for (i=2;i<100;i++)
if (sushu(i))
cout<<"\t”<<i;
}
§5-2 函数的调用
二、函数调用形式
一、对被调函数的声明
三、函数调用过程
返回
一、对被调函数的声明(函数原型)
例:float area(float,float,float);
使用库函数时,一般在文件的开头用#include 命令将包含该函数说明的头文件加入到程序中
使用用户自定义函数,应在主调函数中先对被调函数进行声明。
当被调函数的定义写在主调函数后面时
才需声明
函数的声明形式: 数据类型被调函数的函数名(形参类型说明);
example1:求三角形面积
#include<>
#include <>
float area(float,float,float);/*声明*/
void main()
{float a,b,c,s;
cout<<"\nPlease input a,b,c=";
cin>>a>>b>>c;
s=area(a,b,c);
cout<<“area=“<<s<<“\n”;}
float area(float x,float y,float z)
{ float s;
if (x+y<z||x+z<y||y+z<x)
return 0;
s=(x+y+z)/2;
return sqrt(s*(s-x)*(s-y)*(s-z));
}
#include<>
#include <>
float area(float x,float y,float z)
{ float s;
if (x+y<z||x+z<y||y+z<x)
return 0;
s=(x+y+z)/2;
return sqrt(s*(s-x)*(s-y)*(s-z));
}
void main() /*不需声明*/
{ float a,b,c,s;
cout<<"\nPlease input a,b,c=";
cin>>a>>b>>c;
s=area(a,b,c);
cout<<“area=“<<s<<“\n”;
}
返回
实参表可包含多个参数,用逗号分开;可为常量、变量、表达式(先求值,再将值传递给形参);
二、函数调用形式
函数名(实参列表)
当函数未被调用时,形参不占内存,当函数被调用时,为形参分配内存,并将实参的值传递给形参;
按照书写参数的先后次序(与名字无关),实参将值传递给形参,是“单向性”的“值传递”。要求其类型和个数要一致。例如:
float area(float a,float b,float c)
则调用语句应为:fl

最近更新

2025年甘肃畜牧工程职业技术学院单招职业技能.. 41页

2025年白城职业技术学院单招职业适应性测试题.. 39页

2025年益阳医学高等专科学校单招职业适应性考.. 41页

2026年山东圣翰财贸职业学院单招职业适应性测.. 42页

2026年山东文化产业职业学院单招职测备考题库.. 42页

2026年山东畜牧兽医职业学院单招职业技能测试.. 42页

2025年福州外语外贸学院单招综合素质考试模拟.. 40页

2026年山东铝业职业学院单招职业倾向性测试模.. 41页

2026年山西国际商务职业学院单招综合素质考试.. 42页

2025年福建省厦门市单招职业适应性考试模拟测.. 41页

2025年秦皇岛工业职业技术学院单招职业倾向性.. 41页

2025年绵阳职业技术学院单招职业倾向性测试题.. 40页

2025年芜湖职业技术学院单招职业技能测试模拟.. 40页

2026年广东女子职业技术学院单招职业技能测试.. 43页

2025年苏州经贸职业技术学院单招职业倾向性测.. 39页

2025年莱芜职业技术学院单招职业倾向性测试题.. 41页

2025年营口职业技术学院单招职业技能测试题库.. 40页

2026年广西工业职业技术学院单招职业技能测试.. 42页

2025年西安汽车职业大学单招职业倾向性考试模.. 40页

2026年往年医学单招试题附答案 42页

2026年成都职业技术学院单招职业适应性测试题.. 41页

2025年贵州民用航空职业学院单招综合素质考试.. 41页

2025年贵州轻工职业技术学院单招职业适应性考.. 41页

2025年资阳环境科技职业学院单招职业技能测试.. 41页

2025年辽宁师范高等专科学校单招综合素质考试.. 39页

2026年武汉铁路桥梁职业学院单招职测考试题库.. 43页

2025年辽宁省朝阳市单招职业倾向性测试模拟测.. 38页

2025年辽宁经济职业技术学院单招职业倾向性测.. 42页

2025年辽宁铁道职业技术学院单招职业适应性考.. 40页

2026年江西单招院校试题及答案1套 41页