《matlab程序设计》实验四函数编程

《matlab程序设计》实验四函数编程

ID:27685546

大小:67.00 KB

页数:5页

时间:2018-12-05

《matlab程序设计》实验四函数编程_第1页
《matlab程序设计》实验四函数编程_第2页
《matlab程序设计》实验四函数编程_第3页
《matlab程序设计》实验四函数编程_第4页
《matlab程序设计》实验四函数编程_第5页
资源描述:

《《matlab程序设计》实验四函数编程》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、实验四函数编程实验目的:掌握函数的定义;掌握函数的重载;掌握函数的嵌套调用和递归调用;实验每组人数及学时:组人数1人,学时数:6学时实验要求:要求每位实验人员r课堂吋间完成相关练习实验环境:装有VisualC++6.0的个人电脑实验类型:设计型2.实验指导在函数体屮出现调用£)身的函数称为递归函数。在分析带冇递归性质的问题时,可采用“分治法”:对于一个输入规模为n的函数或问题,用某种方法把输入分割成k(l

2、解。若子问题还相当大,则可以反复使用分治法,直至最后所分得的子问题足够小,以至可以直接求解为止。在利用分治法求解时,若所得子M题的性质和原M题相同,则可采用和原M题相同的解决方法,即递归求解。函数的形参与实参之间传递的方法有三种:值传递、地址传递与引用传递;三种传递方向都是单向传递:实参传向形参;值传递:是将实参的值传递给形参,形参变量与实参变量占用不同的内存空间;地址传递:将实参的地址传递给形参,形参变量与实参变量占用同一段内存空间,对形参的计算就是对实参的计算;引用传递:是给实参建立一个别名,即形参是实参的别名,

3、因而形参与实参也是占用同一段内存空间,,对形参的计算就是对实参的计算;就好像有同学的户口本既有姓名,还有曾用名,都是指同一个人!如果形参是数组,实参是数组名,用的就是地址传递,形参与实参占用同一段内存空间。例如:有10个数,要求:(1)写一个输入函数将10数输入到一个数组屮;(2)写一个排序函数将这个数组进行由小到大存放在另一个数组中,(3)输入一个数,写一个查找函数,要求用折半查找法找出该数是数组屮的第几个元素的值。如果该数不在数组中,则打印出“无此数”。^include〈iostream〉usingnamespa

4、cestd;voidinputa(doublecf],intn);//函数声明voidsorta(doublec[],doubled[],intn);//函数声明voidfindnum(doublec[j,intn,intnuml);//函数声明intmain()doublea[10],b[10];inti,num;inputa(a,10);//函数调用;第-个实参是数组名,形参数组c与实参数组a心用同一段内存空间,第二个实参是数组的大小;for(i=0;i<10;i++)//输出数组a;cout«a[i]«"cou

5、t«endl;sorta(a,b,10);//函数调用;for(i=0;i<10;i++)//输出数组b;cout«b[i]«Hn;cout«endl;cout«"输入要查找的数:"«endl;cin»num;findnum(b,10,num);//函数调用;return0;}voidinputa(doublec[],intn)//定义输入函数:第一个形参是数组,[]可以不写但门不能少,数组的大小由第二个形参传入;{inti;cout«"input10number:"«endl;for(i=0;i

6、组元素的下标总是从现在开始0到n-1;cin»c[i];}voidsorta(doublecf],doubled[],intn)//定义排序函数{inti,j,temp;for(i=0;i

7、p;voidfindnum(doublec[],intn,intnuml)//第一个形参力査找的数组,第二个形参力数组的大小,第三个形参为耍查找的数{intlow=0,high=n-1,binary=(low+high)/2;//low表乐当前查找范同的最小下标,high表示查找范围的最大下标,binary表示查找范围的中间元索的下标while(c[binary]!=numl&&low<=high){if(numl

8、=binary-1;elselow=binary+1;//说明耍杳找的数在当而范围的后一半2中,因而最小下标耍修改为中间下标加1binary=(low+high)/2;}if(low

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。