1 / 36
文档名称:

计算机程序设计基础——第五讲.ppt

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

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

分享

预览

计算机程序设计基础——第五讲.ppt

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

下载得到文件列表

计算机程序设计基础——第五讲.ppt

文档介绍

文档介绍:计算机程序设计基础
第五讲函数
1
三、数组
问题:编程求解
现假定 n=6,k=4
我们用函数来编写这个题的程序,参考程序如下:
#include <> //预编译命令
#define n 6 //定义n为6
#define k 4 //定义k为4
void main() //主函数
{ //主程序开始
printf("sum of %dth powers of integers from 1 to %d=",k,n );
//提示信息
printf("%d\n",SOP(n,k)); //输出结果,其中
//SOP(n,k)为被调用函数
} //主程序结束
2
//以下函数是被主程序调用的函数
int SOP(m,l) //整型自定义函数,m,l 为形参
int m,l; //形参m,l 为整型变量
{ //自定义函数体开始
int i,sum; //整型变量i,sum
sum=0; //初始化累加器
for (i=1; i<=m; i=i+1 ) //计数循环(i)
{ //循环体开始
sum=sum+power( i ,l ); //累加
} //循环体开始
return (sum) ; //返回值sum给函数sop(n,k)
} //自定义函数体结束
//以下函数是被函数sop(n,k)调用的函数
int power(p,q) //整型自定义函数
int p,q; //形参p,q 为整型变量
{ //自定义函数体开始
int i,product; //整型变量
product=1; //初始化累乘器
for(i=1; i<=q; i=i+1) //计数循环( i )
{ //循环体开始( i )
product=product*p; //累乘
} //循环体结束( i )
return(product); //累乘值product返回给power
} //自定义函数体结束
3
自定义函数
<数据类型> <函数名> (<参数表>)
例: int power(p,n)
power为函数名,要以英文字母开头。
int是函数值的数据类型,这里是int(整型)。
(p,n)括号中的p,n为函数的形式参数,形式参数也要定义其数据类型。
函数定义的一般格式:
<数据类型> <函数名> (<参数表>)
<参数说明;>
{
<说明语句>
<执行语句>
}
为了突出重点,先学会基本东西,省略掉一些事情先不讲。
4
1、形式参数是在定义函数时放在函数名后括号中的参数。在未进行函数调用时,并不对形式参数分配内存单元。在发生函数调用时,立刻给形式参数分配内存单元。调用结束后,释放掉行参所占的内存单元。
2、因此,形参变量属于局部变量,其作用域在它所在的函数体内。
3、在定义函数的时候,必须指定形参变量的类型,如何指定?有二种方法:
形式参数与实在参数
(1) int power(p,n)
int p,n;
{
……
}
(2) int power(int p,int n)
{
……
}
有些编译系统不认识第(2)种形式
5
4、实在参数是一个具有确定值的表达式。函数在调用时,将实在参数赋给形式参数。
比如,主函数调用SOP(n,k),这时,n,k为是在参数,n的值为6,k的值为4。在被调用函数定义中,int SOP(m,l)中的m,l为形式参数,在SOP被调用时,系统给m,l这两个形式参数分配了内存单元。之后,n的值6赋给m,k的值4赋给l。
实在参数的个数及类型应与形式参数一致。赋值时前后对应关系不会改变。下面画出主函数与SOP函数,调用与被调用时参数传递关系:
6
主函数执行下述语句时,
printf(“%d\n”,SOP(n,k));
传值给被调用函数
int SOP(m,l)
n的值6传给m,
k的值4传给l。
6和4为实在参数,m和l为形式参数。
被调用函数在其形式参数被赋值之后,开始执行函数体,先是让累加器初始化为0(sum=0),接着进入以i为控制变量的计算循环,i从1变到m(m=6),即累加m次(即6次)。循环体为sum=sum+power(i,l)。当6次循环执行完后,实现的是
注意这里是由另一个自定义函数power(i,l)实现的。
7
power(i,l)处在SOP(m,l)函数中,表示SOP函数去调用power 函数。其中i,l为实在参数,而int power(p,q)中的p,q为形式参数。
比如,执行SOP(6,4)时,l=4,m=6,
当i=1时,
sum=sum+power(1,4)
这里1,4为实在参数,调用power(p,q),两个形式参数p,q分别被赋以1

最近更新

2025年江苏航空职业技术学院单招综合素质考试.. 39页

2025年江西冶金职业技术学院单招职业倾向性测.. 40页

2025年江西工程学院单招职业倾向性测试题库带.. 40页

2025年江西水利职业学院单招职业适应性测试模.. 41页

2025年江门职业技术学院单招职业倾向性测试模.. 40页

2025年沧州职业技术学院单招职业适应性测试模.. 41页

2025年河北省沧州市单招职业适应性考试模拟测.. 40页

2026年上海海洋大学单招职业技能测试模拟测试.. 41页

2026年乌海职业技术学院单招职业技能测试模拟.. 42页

2026年云南单招测试题及答案1套 40页

2026年云南省昭通地区单招职业适应性考试题库.. 42页

2025年泉州轻工职业学院单招职业技能测试模拟.. 40页

2025年洛阳文化旅游职业学院单招职业倾向性测.. 40页

2025年浙江农林大学暨阳学院单招职业适应性测.. 38页

2026年内蒙古能源职业学院单招综合素质考试题.. 41页

2025年浙江海洋大学单招职业技能考试模拟测试.. 40页

2025年浙江省金华市单招职业适应性测试模拟测.. 40页

2026年单招测试题沧州及答案1套 41页

2025年浙江金华科贸职业技术学院单招职业倾向.. 40页

2025年淮北职业技术学院单招职业倾向性测试模.. 40页

2025年清远职业技术学院单招职业适应性测试题.. 40页

2025年温州科技职业学院单招职业技能测试模拟.. 39页

2026年吉林电子信息职业技术学院单招综合素质.. 40页

2026年吉林职业技术学院单招职业适应性考试模.. 42页

2026年喀什职业技术学院单招职业技能测试题库.. 42页

2026年四川卫生康复职业学院单招职业技能测试.. 41页

2025年湖南现代物流职业技术学院单招职业倾向.. 41页

2025年湖南铁道职业技术学院单招职业技能考试.. 39页

2026年娄底职业技术学院单招职业技能考试模拟.. 42页

小学数学六年级下册《鸽巢问题》作业设计 9页