实验五 函数文件的编写

合集下载

c语言实验报告 函数

c语言实验报告 函数

c语言实验报告函数C语言实验报告:函数引言:C语言是一种广泛应用于软件开发领域的高级编程语言,其强大的功能和灵活性使得它成为许多程序员的首选。

在C语言中,函数是一种非常重要的概念和工具,它可以帮助我们更好地组织和管理代码,提高代码的可读性和可维护性。

本实验报告将深入探讨C语言中函数的使用方法和特性。

一、函数的定义和声明函数是C语言中的一个基本概念,它由一组语句组成,用于完成特定的任务。

在使用函数之前,我们需要先进行函数的定义和声明。

函数的定义包括函数的名称、参数列表和函数体,而函数的声明则是告诉编译器函数的名称和参数列表。

函数的定义和声明通常放在程序的开头部分或者头文件中,以便其他部分的代码可以调用这些函数。

二、函数的参数传递在C语言中,函数的参数传递可以通过值传递和引用传递两种方式进行。

值传递是指将实际参数的值复制给形式参数,函数内部对形式参数的修改不会影响到实际参数。

而引用传递则是指将实际参数的地址传递给形式参数,函数内部对形式参数的修改会影响到实际参数。

根据实际需求,我们可以选择不同的参数传递方式。

三、函数的返回值函数的返回值是指函数执行完毕后返回给调用者的值。

在C语言中,函数的返回值可以是任意类型的数据,包括整型、浮点型、字符型等。

通过使用return语句,我们可以将需要返回的值传递给调用者。

在函数的声明和定义中,我们需要指定函数的返回类型,以便编译器正确处理函数的返回值。

四、函数的递归调用递归是指函数调用自身的过程,它在解决某些问题时非常有效。

在C语言中,我们可以使用递归来实现一些复杂的算法和数据结构。

递归函数必须包含一个终止条件,以避免无限递归的情况发生。

在编写递归函数时,我们需要仔细考虑递归的边界条件和递归的终止条件,以确保函数能够正确地执行。

五、函数的库C语言提供了许多常用的函数库,可以帮助我们更方便地进行开发和编程。

这些函数库包括数学函数库、字符串函数库、输入输出函数库等。

通过调用这些函数库中的函数,我们可以实现更复杂的功能和算法。

函数实验报告总结

函数实验报告总结

函数实验报告总结函数实验报告总结引言:函数是计算机编程中的重要概念,它能够将一组输入映射为输出,是程序设计中模块化和可重用性的基石。

为了更好地理解函数的概念和使用方法,我们进行了一系列的函数实验。

本文将对这些实验进行总结和归纳,探讨函数在实际编程中的应用。

实验一:函数的定义和调用在这个实验中,我们学习了函数的基本概念和语法。

通过定义一个简单的函数,我们了解了如何使用关键字“def”来定义函数,并通过调用函数来执行其中的代码块。

这个实验让我们明白了函数的封装性和可复用性,可以将一段代码封装成函数,供其他地方调用。

实验二:函数的参数传递在这个实验中,我们学习了函数的参数传递方式。

通过定义带有参数的函数,我们了解了函数参数的不同类型,包括位置参数、关键字参数和默认参数。

我们还学习了如何在函数调用时传递参数,并探讨了参数传递的机制和注意事项。

这个实验让我们对函数的灵活性和可变性有了更深入的理解。

实验三:函数的返回值在这个实验中,我们学习了函数的返回值。

通过定义带有返回值的函数,我们了解了如何使用关键字“return”来返回函数执行的结果。

我们还学习了函数返回值的类型和用途,包括返回单个值、返回多个值和返回空值。

这个实验让我们明白了函数的结果可以被其他代码使用,提高了代码的灵活性和可扩展性。

实验四:递归函数在这个实验中,我们学习了递归函数的概念和用法。

通过定义递归函数来解决问题,我们了解了递归的原理和应用场景。

我们还学习了递归函数的优缺点,包括代码简洁但可能导致性能问题。

这个实验让我们对递归思想和算法有了更深入的认识,提高了问题解决的能力。

实验五:高阶函数在这个实验中,我们学习了高阶函数的概念和用法。

通过定义接受函数作为参数或返回函数的函数,我们了解了高阶函数的特点和应用场景。

我们还学习了匿名函数和函数式编程的基本概念,以及如何使用内置函数和自定义函数来实现高级功能。

这个实验让我们对函数的扩展性和灵活性有了更深入的理解。

实验五(线性方程组的数值解法和非线性方程求解)

实验五(线性方程组的数值解法和非线性方程求解)

1大学数学实验 实验报告 | 2014/4/5一、 实验目的1、学习用Matlab 软件数值求解线性代数方程组,对迭代法的收敛性和解的稳定性作初步分析;2、通过实例学习用线性代数方程组解决简化问题。

二、 实验内容项目一:种群的繁殖与稳定收获:种群的数量因繁殖而增加,因自然死亡而减少,对于人工饲养的种群(比如家畜)而言,为了保证稳定的收获,各个年龄的种群数量应维持不变。

种群因雌性个体的繁殖而改变,为方便起见以下种群数量均指其中的雌性。

种群年龄记作k=1,2,…,n ,当年年龄k 的种群数量记作x k ,繁殖率记作b k (每个雌性个体1年的繁殖的数量),自然存活率记作s k (s k =1−d k ,d k 为1年的死亡率),收获量记作ℎk ,则来年年龄k 的种群数量x ̌k 应该为x ̌k =∑b k n k=1x k , x ̌k+1=s k x k −ℎk , (k=1,2,…,n -1)。

要求各个年龄的种群数量每年维持不变就是要求使得x ̌k =x k , (k=1,2,…,n -1).(1) 如果b k , s k 已知,给定收获量ℎk ,建立求各个年龄的稳定种群数量x k 的模型(用矩阵、向量表示).(2) 设n =5,b 1=b 2=b 5=0,b 3=5,b 4=3,s 1=s 4=0.4,s 2=s 3=0.6,如要求ℎ1~ℎ5为500,400,200,100,100,求x 1~x 5.(3) 要使ℎ1~ℎ5均为500,如何达到?问题分析:该问题属于简单的种群数量增长模型,在一定的条件(存活率,繁殖率等)下为使各年龄阶段的种群数量保持不变,各个年龄段的种群数量将会满足一定的要求,只要找到种群数量与各个参量之间的关系,建立起种群数量恒定的方程就可以求解出各年龄阶段的种群数量。

模型建立:根据题目中的信息,令x ̌k =x k ,得到方程组如下:{x ̌1=∑b k nk=1x k =x 1x ̌k+1=s k x k −ℎk =x k+1整理得到:{−x 1∑b k nk=1x k =0−x k+1+s k x k =ℎk2 大学数学实验 实验报告 | 2014/4/52写成系数矩阵的形式如下:A =[b 1−1b 2b 3s 1−100s 2−1…b n−1b n0000⋮⋱⋮000000000⋯00−10s n−1−1]令h =[0, ℎ1,ℎ2,ℎ3,…,ℎn−2,ℎn−1]Tx =[x n , x n−1,…,x 1]T则方程组化为矩阵形式:Ax =h ,即为所求模型。

实验五 M文件及程序设计

实验五 M文件及程序设计

一、实验目的1.练习函数的定义和书写及调用2.练习M文件下书写代码二、实验设备装有MATLAB的计算机。

三、实验内容1,分别编写命令(M)文件和函数(function)文件,在命令文件中可循环输入学生成绩,在函数文件判断成绩所属等级。

统计各分段的人数,并将各人的成绩按优、良、中、及格和不及格表示。

2.猜数游戏。

首先由计算机产生一个[1,100]之间的随机整数,然后由用户猜测所产生的随机数。

根据用户猜测的情况给出不同提示,如猜测的数大于产生的数,则显示“High”并请用户继续猜测,小于则显示“Low”并请用户继续猜测,等于则显示“You won”同时退出游戏。

用户最多可以猜7次。

如果第七次还未猜对,则显示“You fail!"并退出游戏。

四、实验步骤和结果1. 代码结果:输入正数开始5请输入学生成绩x=89请输入学生姓名l请输入学生成绩x=78请输入学生姓名h请输入学生成绩x=45请输入学生姓名k请输入学生成绩x=-1ans =优秀的人数0ans =良好的人数1ans =中等的人数1ans =及格的人数0ans =不及格的人数1姓名成绩等级l 89 良好h 78 中等k 45 不及格2.代码五、总结1.实验练习了函数的创建和使用,并且在M的文件中调用函数。

2.复习了单元数组和结构数组的知识。

3. 使用了字符串比较函数,在M文件中对各个等级的人数进行了统计。

4.猜数游戏中开始的代码,当第七次猜对后会输出”You Fail”,后对代码进行了改进。

C语言程序设计实验五:函数(5篇范例)

C语言程序设计实验五:函数(5篇范例)

C语言程序设计实验五:函数(5篇范例)第一篇:C语言程序设计实验五:函数C语言程序设计实验五:函数1、定义函数返回两个数中较大的数,在主函数中通过调用该函数求三个数中较大的数并输出,编写主函数调用该函数。

说明:(1)请大家按学号来坐,便于考勤和管理。

(2)请珍惜宝贵的实验时间!不要做与实验无关的事情,比如聊QQ、上网或打游戏。

(3)直接把C语言代码粘贴到相应的实验题目下方,上交实验报告时只交word文档。

(4)文档名称:班级+学号后2位+姓名+实验编号,例如12通1班12张山实验五.doc。

第二篇:C语言程序设计实验七:函数、数组、指针C语言程序设计实验七:函数、数组、指针1、程序运行后,用户任意输入一个字符串,求出字符串长度,然后输出字符串内容及个数。

不能使用strlen函数。

求字符串长度函数的函数原型必须如下:int MyStrLenPt(char *str)若输入:nihao123!则输出:nihao123!:9 chars2、编写一个对一维数组进行排序的程序。

要求:写两个函数,一个主函数,一个sort函数。

在主函数中完成数组的输入和输出,通过调用sort函数对数组进行排序。

sort函数的原型为:voidsort(int*p, intn);说明:(1)请大家按学号来坐,便于考勤和管理。

(2)请珍惜宝贵的实验时间!不要做与实验无关的事情,比如聊QQ、上网或打游戏。

(3)直接把C语言代码粘贴到相应的实验题目下方,上交实验报告时只交word文档。

(4)文档名称:班级+学号后2位+姓名+实验编号,例如11电1班12张山实验七.doc。

第三篇:C语言程序设计—函数—实验报告实验报告专业软件工程班级X班学号_ XXXXXXXXXXX_姓名实验日期:201X年X月X日报告退发(订正、重做)课程C程序设计实验实验名称函数一、实验目的① 熟练掌握C程序中函数的定义;② 掌握函数的调用,函数参数的传递;③ 熟练掌握函数的嵌套调用和递归调用;二、实验环境(描述实验的软件、硬件环境)① 软件环境:windows xp/win7等操作系统,Microsoft Visual C++ 6.0编译器;② 硬件环境:PC机一台三、实验内容、步骤和结果分析题目一:编写一个用来判断质数(素数)的函数。

实验五、函数程序设计

实验五、函数程序设计

实验五函数程序设计一、实验目的1.掌握函数的定义、函数的说明和调用。

2.掌握函数的参数及其传递方式,函数值的正确返回。

二、实验设备及分组1.Windows XP操作系统;2.Visual C++6.0语言环境;3.每人一台PC机。

三、实验内容1.[目的]掌握标准库函数的说明和调用方法。

[题目内容]编写一个程序,首先显示一个菜单,然后根据用户的选择,输入数据后,执行相应的操作。

[输入]用户选择和函数自变量值[输出]如下菜单:=======MENU======1.。

sin2.。

cos3.。

pow4.。

sqrt0.。

exit==================[提示]使用标准库函数、多分支选择结构。

2.[目的]掌握用户自定义函数的定义、函数的说明和调用方法。

[题目内容]编写一个用户自定义函数,该函数有一个整型参数,函数的功能是:当这个整型数的值是偶数时,函数的返回值为0,当这个整型数的值是奇数时,返回值为1 。

编写一个程序,从键盘输入任意10个整数,分别调用用户自定义函数来判断这10个整数的奇偶性。

[输入]任意10个整数[输出]这10个整数的奇偶性[提示]在主函数中使用循环结构输入10个整数。

根据子函数的返回值输出相应的判断结果信息。

3.[目的]掌握用户自定义函数的定义、函数的说明和调用方法。

[题目内容]编写一个用户自定义函数,该函数有三个整数参数,函数的功能是:求解这三个整数的最大值,函数的返回值为三个参数的最大值。

编写一个程序,从键盘输入任意5个整数,分别两次调用用户自定义函数来求出这5个整数中的最大值。

[输入]任意5个整数[输出]这5个整数的最大值[提示]先用前三个整数调用函数,求出的最大值作为参数之一,再与另两个整数一起求出最大值即为所求。

4.[目的]掌握用户自定义函数的定义、函数的说明和调用方法。

[题目内容] n m A 表示从m 各元素中抽出n 个元素的排列的个数。

它的计算公式为:)!(!n m m A n m -=。

函数实验报告

函数实验报告

函数实验报告函数实验报告引言:函数是数学中一个重要的概念,它描述了一种特定的关系,将一个或多个输入值映射到一个输出值。

在数学和计算机科学中,函数被广泛应用于各种问题的建模和解决。

本实验旨在通过实际案例和数据分析,探索函数的特性和应用。

一、函数的定义和特性1.1 函数的定义函数是一种映射关系,它将一个或多个输入值映射到一个唯一的输出值。

函数通常用符号表示,如f(x)、g(x)等。

1.2 函数的特性函数具有以下特性:- 唯一性:对于每一个输入值,函数只能有一个输出值。

- 定义域:函数的输入值的集合称为定义域,它决定了函数的有效输入范围。

- 值域:函数的输出值的集合称为值域,它决定了函数的有效输出范围。

- 可逆性:如果一个函数的每一个输出值都可以通过逆映射找到唯一的输入值,则该函数是可逆的。

二、函数的应用案例2.1 函数在物理学中的应用函数在物理学中有广泛的应用,例如描述运动的函数、描述力的函数等。

通过建立合适的函数模型,可以对物理系统进行分析和预测。

2.2 函数在经济学中的应用函数在经济学中也有重要的应用,例如成本函数、收益函数等。

通过对经济系统中的各种变量建立函数关系,可以进行经济政策的制定和分析。

2.3 函数在计算机科学中的应用函数在计算机科学中是一种基本的概念,它被广泛应用于算法设计、软件开发等领域。

例如,计算机程序可以看作是由一系列函数构成的。

三、函数实验设计与数据分析3.1 实验设计本次实验设计了一个函数实验,通过收集和分析数据来验证函数的特性和应用。

实验对象是一组学生的身高和体重数据。

3.2 数据收集在实验中,我们随机选择了100名学生,并测量了他们的身高和体重。

通过这些数据,我们可以建立身高和体重之间的函数关系。

3.3 数据分析通过对身高和体重数据的分析,我们可以得出以下结论:- 身高和体重之间存在正相关关系,即身高增加时,体重也会增加。

- 身高和体重之间的函数关系可以用线性函数来描述,即体重 = a * 身高 + b。

MATLAB)课后实验答案[1]

MATLAB)课后实验答案[1]

实验一 MATLAB 运算基础1。

先求下列表达式的值,然后显示MATLAB 工作空间的使用情况并保存全部变量。

(1) 0122sin 851z e =+(2) 21ln(2z x =,其中2120.455i x +⎡⎤=⎢⎥-⎣⎦ (3) 0.30.330.3sin(0.3)ln , 3.0, 2.9,,2.9,3.022a a e e az a a --+=++=--(4) 2242011122123t t z t t t t t ⎧≤<⎪=-≤<⎨⎪-+≤<⎩,其中t =0:0.5:2.5 解:4. 完成下列操作:(1)求[100,999]之间能被21整除的数的个数. (2) 建立一个字符串向量,删除其中的大写字母。

解:(1) 结果:(2)。

建立一个字符串向量例如:ch=’ABC123d4e56Fg9';则要求结果是:实验二 MATLAB 矩阵分析与处理1. 设有分块矩阵33322322E R A O S ⨯⨯⨯⨯⎡⎤=⎢⎥⎣⎦,其中E 、R 、O 、S 分别为单位矩阵、随机矩阵、零矩阵和对角阵,试通过数值计算验证22E R RS A OS +⎡⎤=⎢⎥⎣⎦。

解: M 文件如下;5。

下面是一个线性方程组:1231112340.951110.673450.52111456x x x ⎡⎤⎢⎥⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎢⎥⎢⎥⎣⎦ch =123d4e56g9(1) 求方程的解。

(2) 将方程右边向量元素b 3改为0。

53再求解,并比较b 3的变化和解的相对变化。

(3) 计算系数矩阵A 的条件数并分析结论。

解: M 文件如下:实验三 选择结构程序设计1. 求分段函数的值.2226035605231x x x x y x x x x x x x ⎧+-<≠-⎪=-+≤<≠≠⎨⎪--⎩且且及其他用if 语句实现,分别输出x=-5.0,—3.0,1.0,2。

实验报告函数的用法(3篇)

实验报告函数的用法(3篇)

第1篇一、实验目的1. 理解函数的概念及作用。

2. 掌握函数的声明、定义和调用方法。

3. 学习函数的参数传递和返回值。

4. 熟悉函数的嵌套调用和递归调用。

二、实验原理函数是程序设计中的一种基本概念,它将一系列具有特定功能的代码封装在一起,以便重复使用。

函数的主要作用是将复杂的程序分解为多个模块,提高代码的可读性和可维护性。

在C语言中,函数分为两大类:标准函数和自定义函数。

标准函数是C语言库函数,如printf()、scanf()等;自定义函数是由程序员根据实际需求编写的函数。

函数的基本结构如下:```c函数返回类型函数名(参数列表) {// 函数体}```三、实验内容1. 函数的声明函数声明用于告诉编译器函数的存在,包括函数名、返回类型和参数列表。

函数声明格式如下:```c函数返回类型函数名(参数类型参数名);```2. 函数的定义函数定义是函数声明的具体实现,包括函数名、返回类型、参数列表和函数体。

函数体由大括号{}包围,包含一系列执行语句。

```c函数返回类型函数名(参数类型参数名) {// 函数体}```3. 函数的调用函数调用是指程序中调用函数的过程。

调用函数时,需要按照函数的参数列表提供相应的实参。

```c函数名(实参1, 实参2, ..., 实参n);```4. 函数的参数传递函数的参数传递主要有两种方式:值传递和地址传递。

(1)值传递:将实参的值复制给形参,函数内部对形参的修改不会影响实参。

(2)地址传递:将实参的地址传递给形参,函数内部通过修改形参的地址来修改实参的值。

5. 函数的返回值函数的返回值是指函数执行完毕后返回给调用者的值。

函数返回值类型必须与函数声明时指定的返回类型一致。

6. 函数的嵌套调用函数嵌套调用是指在一个函数内部调用另一个函数。

嵌套调用的函数可以递归调用自身。

7. 函数的递归调用递归调用是指函数在执行过程中直接或间接地调用自身。

递归调用分为直接递归和间接递归两种。

实验5函数程序设计

实验5函数程序设计

实验5函数程序设计实验目标:通过实验,学习函数的基本概念和使用方法,掌握如何使用函数设计和实现程序。

实验内容:1.函数概念的理解2.函数的定义和调用3.函数的参数传递4.函数的返回值5.函数重载6.递归函数的使用一、函数概念的理解函数是一个独立的代码块,用于执行特定的任务。

它将一些输入参数转换成输出结果,可以被多次调用,提高代码的可维护性和代码的重用性。

二、函数的定义和调用函数的定义包括函数的声明和函数体。

函数的声明用于向编译器说明函数的返回值类型、函数名和参数列表,可以定义在函数调用之前或者在函数体之前,以告诉编译器函数的存在。

函数的函数体用于实现函数的具体功能。

函数的调用是通过函数名和实参列表来完成的。

当函数被调用时,程序执行会转移到函数体中执行相应的代码,函数执行完毕后返回到调用函数的地方继续执行。

调用函数时,可以将实参的值传递给形参。

三、函数的参数传递参数传递是指调用函数时将实参的值传递给形参的过程。

参数传递可以分为按值传递、按引用传递和按指针传递三种方式。

按值传递是指将实参的副本传递给形参。

在函数体中对形参的修改不会影响实参的值。

按引用传递是指将实参的引用传递给形参,即形参是实参的别名。

在函数体中对形参的修改会影响实参的值。

按指针传递是指将实参的地址传递给形参,即形参是实参的指针。

在函数体中对指针指向的值的修改会影响实参的值。

四、函数的返回值函数返回值是指函数执行完毕后返回给调用函数的值。

函数可以返回一个值或者不返回值。

函数返回值的类型和个数需要在函数声明或者定义时指定,函数体中使用return语句返回具体的值。

函数返回值可以通过赋值给变量来使用。

五、函数重载函数重载是指在同一作用域内定义多个同名函数,但是函数的参数列表不同。

编译器会根据不同的参数列表选择调用对应的函数。

函数重载的实现要注意参数的类型和个数,不能只是返回值不同。

六、递归函数的使用递归函数是指在函数的定义中调用函数本身的函数。

函数实验报告范文

函数实验报告范文

函数实验报告范文
实验5函数1.实验目的和要求:参见实验指导书实验八2.实验内容和步骤:
实验内容:实验指导书中的实验八实验步骤:
1.1.实验内容的第1题,通过此题,理解到要在单步调试时可以观察自定义的函数内部变量变化情况,单步调试如何操作:点击快捷键F10开场调试,在下方窗口输入要观察的变量,回车显示跟踪变量的值。

将光标放于函数定义前点击单步调试按钮,出现红点后即可进入函数,退出调试再点一下调试按钮或者按
Shift+F5退出。

提问(1),请在下面粘贴运行结果画面:
实参a是否为同一变量?实参a不是同一变量,而是两个不同的变量分别出如今两个不同的函数中。

提问(2),请请在下面粘贴运行结果画面:
提问(3),观察结果有何变化?大小无法比拟,系统自动给出一个随机数。

通过此题,可以得出什么结论?在主函数之前定义了变量,那么在之后编译时不用再定义;而部分变量只作用于部分函数,但能影响全局变量。

假设定义在主函数之后那么需要加extern声明外部变量的作用域的作用范围,否那么得到的是随机数。

2.2实验内容部分第2题源程序代码,请贴图:
程序运行结果画面,请贴图:
2.3实验内容部分第3题源程序代码,请贴图:
程序运行结果画面,请贴图:
2.4选做题,假设做了,请在下面给出源程序代码贴图及运行结果贴图2.5选做题,假设做了,请在下面给出源程序代码贴图及运行结果贴图
3.实验小结掌握了函数的调用方法和多模块程序设计,函数的递归和嵌套调用各种变量的定义范围和使用方法,形参和实参的对应关系以及值传递调用函数的方法。

函数式编程实验报告(3篇)

函数式编程实验报告(3篇)

第1篇一、实验目的1. 了解函数式编程的基本概念和特点。

2. 掌握Haskell语言的基本语法和编程技巧。

3. 通过实验,加深对函数式编程的理解和应用。

二、实验环境1. 操作系统:Windows 102. 编译器:GHC (Glasgow Haskell Compiler)3. 编辑器:Visual Studio Code三、实验内容本次实验主要围绕Haskell语言展开,通过编写几个简单的函数式程序,学习函数式编程的基本概念和技巧。

1. 高阶函数高阶函数是指接受函数作为参数或返回函数的函数。

以下是一个使用高阶函数实现阶乘的例子:```haskellfactorial :: Integer -> Integerfactorial n = foldl (\acc x -> acc x) 1 [1..n]```在这个例子中,`foldl` 是一个高阶函数,它接受一个二元运算符(``)和一个初始值(`1`),然后对列表 `[1..n]` 进行折叠操作,最终计算出阶乘结果。

2. 惰性求值Haskell采用惰性求值策略,即只有在需要的时候才进行计算。

以下是一个使用惰性列表实现斐波那契数列的例子:```haskellfibonacci :: [Integer]fibonacci = 0 : 1 : zipWith (+) fibonacci (tail fibonacci)```在这个例子中,`fibonacci` 是一个无限列表,它通过递归和惰性求值的方式生成斐波那契数列。

3. 模式匹配模式匹配是Haskell语言的核心特性之一,它允许我们根据输入值的类型和结构进行不同的操作。

以下是一个使用模式匹配计算两个数的最大值的例子:```haskellmaxValue :: (Ord a) => a -> a -> amaxValue x y = if x > y then x else ymaxValue x y = case (x, y) of(x, y) | x > y -> x_ -> y```在这个例子中,我们首先使用`if`语句进行条件判断,然后使用模式匹配对两个数进行匹配,并根据匹配结果返回最大值。

MATLAB实验5(学号姓名)

MATLAB实验5(学号姓名)

实验五MATLAB函数及其调用
一、实验目的
(1)熟练掌握M文件的编写。

(2)掌握MATLAB程序的调试方法。

(3)掌握MATLAB函数文件的编写。

二、实验内容
(1)编写函数文件。

(2)对自己编写的程序进行调试。

三、程序设计
实验1:实验题6,教材51页。

实验2:编写函数rootresult.m求解一元二次方程ax2+bx+c=0的根。

输入参数a、b、c,调用用户编写的求根的函数,得到方程的根。

实验3:写一个MATLAB 函数piFun01.m 来计算下列级数:f(n) = 4*(1 - 1/3 + 1/5 - 1/7 + 1/9 - 1/11 + ...) 其中n为函数的输入,代表上述级数的项数,f(n) 则是函数的输出。

(选做,附加分)
四、实验结果
实验1:
程序代码:
运行结果:
实验2:
程序代码:
运行结果:
实验3:
程序代码:
运行结果:。

(完整版)MATLAB)课后实验答案[1]

(完整版)MATLAB)课后实验答案[1]

实验一 MATLAB 运算基础1. 先求下列表达式的值,然后显示MATLAB 工作空间的使用情况并保存全部变量。

(1) 0122sin 851z e =+(2) 21ln(2z x =,其中2120.455i x +⎡⎤=⎢⎥-⎣⎦ (3) 0.30.330.3sin(0.3)ln , 3.0, 2.9,,2.9,3.022a a e e a z a a --+=++=--L (4) 2242011122123t t z t t t t t ⎧≤<⎪=-≤<⎨⎪-+≤<⎩,其中t =0:0.5:2.5 解:4. 完成下列操作:(1) 求[100,999]之间能被21整除的数的个数。

(2) 建立一个字符串向量,删除其中的大写字母。

解:(1) 结果:(2). 建立一个字符串向量例如:ch='ABC123d4e56Fg9';则要求结果是:实验二 MATLAB 矩阵分析与处理1. 设有分块矩阵33322322E R A O S ⨯⨯⨯⨯⎡⎤=⎢⎥⎣⎦,其中E 、R 、O 、S 分别为单位矩阵、随机矩阵、零矩阵和对角阵,试通过数值计算验证22E R RS A O S +⎡⎤=⎢⎥⎣⎦。

解: M 文件如下;5. 下面是一个线性方程组:1231112340.951110.673450.52111456x x x ⎡⎤⎢⎥⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎢⎥⎢⎥⎣⎦(1) 求方程的解。

(2) 将方程右边向量元素b 3改为0.53再求解,并比较b 3的变化和解的相对变化。

(3) 计算系数矩阵A 的条件数并分析结论。

解: M 文件如下: 123d4e56g9实验三 选择结构程序设计1. 求分段函数的值。

2226035605231x x x x y x x x x x x x ⎧+-<≠-⎪=-+≤<≠≠⎨⎪--⎩且且及其他用if 语句实现,分别输出x=-5.0,-3.0,1.0,2.0,2.5,3.0,5.0时的y 值。

南昌大学C++实验5 函数

南昌大学C++实验5 函数

南昌大学实验报告学生姓名:学号:专业班级:实验类型:□验证□综合□√设计□创新实验日期:实验成绩:一、实验名称实验5 函数二、实验目的1.掌握函数的定义方法、函数的调用方法、参数说明以及返回值。

掌握实参与形参的对应关系以及参数之间的“值传递”的方式;掌握函数的嵌套调用及递归调用的设计方法;2.掌握全局变量和局部变量、动态变量与静态变量的概念和使用方法;3.在编程过程中加深理解函数调用的程序设计思想。

二.实验内容1.多模块的程序设计与调试的方法;2.函数的定义和调用的方法;3.用递归方法进行程序设计。

三.实验环境PC微机DOS操作系统或Windows 操作系统Turbo C 程序集成环境四.实验内容1.编写一个函数primeNum(int num),它的功能是判别一个数是否为素数。

如果num 是素数,返回该数;否则返回0值。

要求:(1)在主函数输入一个整数num,调用该函数后,输出num是否是素数的信息。

输出格式为:num is prime或num is not prime。

(2)分别输入以下数据:0,1,2,5,9,13,59,121,运行程序并检查结果是否正确。

2.编写一个计算组合数的函数combinNum(int m,int n)。

计算结果由函数返回。

计算组合数的公式是:c(m,n)=m!/(n!*(m-n)!)要求:(1)从主函数输入m 和n 的值。

对m>n 、m<n 和m=n 的情况作分别处理后调用函数combinNum(m,n),在主函数内输出结果值。

(2)对m>n 、m<n 和m=n 的情况各取一组数据进行测试,检查程序的正确性。

(3)修改程序,把两个函数分别放在两个程序文件中,作为两个文件进行编译、链接和运行。

3.已知xsh x sh shx sh y 32)1(++=,其中,sh 为双曲正弦函数,即2)(tt e e t sh --=,编写一个程序,输入x 的值,求y 的值。

实验五-MATLAB的程序设计

实验五-MATLAB的程序设计

实验五MATLAB的程序设计一、实验目的1.熟悉MATLAB 的编程环境;2.熟悉和掌握脚本文件和函数文件建立与使用方法;3.掌握MATLAB程序设计的流程控制语句;4.掌握函数调用和参数传递;5.熟悉MATLAB 程序调试方法。

二、实验仪器1.计算机2.MATLAB 软件环境三、实验指导1. M 文本文件介绍一个M 文件通常包含五个部分,函数定义语句、H1 帮助行、帮助文本、函数体或者脚本文件语句和注释语句。

一个完整的M 文件的结构为:function f = fact(n) 函数定义语句% Compute a factorial value. H1 行% FACT(N) returns the factorial of N, 帮助文本% usually denoted by N!% Put simply, FACT(N) is PROD(1:N). 注释语句f = prod(1:n); 函数体函数定义语句只在函数文件中存在,定义函数名称、输入输出参数的数量和顺序。

函数定义语句的格式为:function y = fact(x)2. 函数流程控制顺序结构顺序结构是最简单的程序结构,系统在编译程序时,按照程序的物理位置顺序执行。

这种程序容易编制,但是结构单一,能够实现的功能有限。

判断语句(if…else…end)if…endif…else…endif…elseif…else…end1)if…end此时的程序结构如下:if 表达式执行代码块end这是最简单的判断语句,只有一个判断语句,其中的表达式为逻辑表达式,当表达式为真时,执行相应的语句,否则,直接跳到下一段语句。

2)if…else…end当程序有两个选择时,可以选择if…else…end 结构,此时程序结构为:if 表达式执行代码块1else执行代码块2end当判断表达式为真时,执行代码块1,否则执行代码块2。

3)if…elseif…else…end上面的两种形式中,分别包含一个选择和两个选择,当判断包含多个选择时,可以采用elseif 语句,结构为:if 表达式1执行代码块1elseif 表达式2执行代码块2elseif ..................else执行代码块end其中可以包含任意多个elseif 语句。

实验五 函数文件的编写

实验五 函数文件的编写
二、实验内容
1、定义一个函数文件lifang.m,用于计算一个立方体的表面积和体积。在命令窗口中调用它。
函数如下
结果:
2、当n分别取100、1000、10000时,求下列各式的值:
(1)
函数为:
结果为
(2)
要求用函数文件的定义和调用来实现。
函数调用
命令敞口
3、利用函数文件,实现极坐标 与直角坐标 之间的转换,并通过函数调用加以验证。
直角坐标转化为极坐标函数为
极坐标转化为直角坐标函数定义:函数文件的调用 Nhomakorabea命令窗口:
4、利用预定义变量nargin和nargout,实现以下功能的函数:若输入只有一个参数,输出以该参数为半径的球的体积;若输入有两个参数,输出分别以该参数为底面半径和高的圆柱体积;若输入有三个参数,输出分别以该参数为三条边的长方体的体积;若输入参数多于三个,则报错。
(3)命令文件可以直接运行,在MATLAB命令窗口输入命令文件的名字,就会顺序执行命令文件中的命令,而函数文件不能直接运行,而要以函数调用的方式运行。
2、当n分别取100、1000、10000时,求下式的值:
函数文件:
命令文件:
命令窗口:
3、编写一个函数文件,用于求两个矩阵的乘积和点乘,然后在命令文件中调用该函数。
函数文件:
命令文件:
命令窗口:
先函数文件:
命令文件:
命令窗口:
5、用函数的递归调用定义一个函数文件求 ,然后调用该函数文件求 。
函数文件:
命令文件:
三、思考练习
1、总结函数文件和命令文件的区别。
答:(1)命令文件没有输入参数,也不返回输出参数,而函数文件可以带输入参数,也可以返回参数;

MATLAB 实验五 函数文件

MATLAB  实验五  函数文件

MATLAB 实验报告实验五函数文件一、实验目的1、理解函数文件的概念2、掌握定义和调用MTALAB函数的方法二、实验内容1, 命令文件 fu1、函数文件 fushu.mfunction [a,b,c,d]=fushu(A)a=exp(A);b=log(A);c=sin(A);d=cos(A);shu2.mA=input('请输入任意一个复数A:');[a,b,c,d]=fushu(A);abcd2、函数文件 wulixitong.mfunction [a1,a2,N1,N2]=wulisitong(m1,m2,M)g=9.8;A=[m1*cos(M*pi/180) -m1 -sin(M*pi/180) 0m1*sin(M*pi/180) 0 cos(M*pi/180) 00 m2 -sin(M*pi/180) 00 0 -cos(M*pi/180) 1];B=[0m1*gm2*g];X=inv(A)*B;a1=X(1);a2=X(2);N1=X(3);N2=X(4);命令文件wulixitong2.mm1=input('请输入m1:');m2=input('请输入m2:');M=input('请输入角度M:');[a1,a2,N1,N2]=wulisitong(m1,m2,M);a1a2N1N23、函数文件 sushu.mfunction [x]= sushu(m)%UNTITLED3 Summary of this function goes here for M=2:(m/2)if mod(m,M)==0b=0;breakelseb=1;endendif b==1x=m;xendend命令文件sushu2.mfor m=10:99[x]=sushu(m)x=x/10+mod(x,10)*10;[y]=sushu(x)end4、函数文件fx.mfunction [f] = fx( x)%UNTITLED7 Summary of this function goes here % Detailed explanation goes hereA=0.1+(x-2).^2;B=0.01+(x-3).^4;f=1./A+1./B;end5、(1)函数文件fn.mfunction [ f ] = fn(n)%UNTITLED6 Summary of this function goes here % Detailed explanation goes heref=n+10*log(n^2+5)end命令文件fn2.m[f40]=fn(40);[f30]=fn(30);[f20]-fn(20);y=f40/(f20+f30)(2)/函数文件fn3.mfunction [ f ] = fn3(n)%UNTITLED6 Summary of this function goes here % Detailed explanation goes heref=0;for x=1:nf=f+x*(x+1);end命令文件fn4.m[f40]=fn3(40);[f30]=fn3(30);[f20]-fn3(20);y=f40/(f20+f30)三、实验总结通过这次实习,我有以下收获:1,学会了运用m文件创建函数与命令文件2,掌握了函数的定义及变量的命名3,学会了运用MATLAB解决较为复杂的数学问题。

MATLAB实验五 函数文件

MATLAB实验五 函数文件

MATLAB实验报告学院:光电学院班级:073-1姓名:***学号:************实验五 函数文件1.定义一个函数文件,求给定复数的指数、对数、正弦和余弦,并在命令文件中调用该函数文件。

程序设计:function [e ln s c]=num(x) e=exp(x) ln=log(x) s=sin(x) c=cos(x) end运行结果: >> num(5i) e =0.2837 - 0.9589i ln =1.6094 + 1.5708i s =0 +74.2032i c =74.2099 ans =0.2837 - 0.9589i2.一物理系统可用下列方程组来表示: ⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡----g g m m N N a a m m m m 2121212111001cos 000sin 00cos 0sin 0sin cos θθθθθθ从键盘输入m1、m2和θ的值,求N a a 121、、和N2的值。

其中g 取9.8,输入θ时以角度为单位。

程序设计: 函数文件in.m:function [a1,a2,N1,N2]=in(m1,m2,t) g=9.8;A=[m1*cos(t) -m1 -sin(t) 0;m1*sin(t) 0 cos(t) 0;0 m2 -sin(t) 0;0 0 -cos(t) 1]; C=[0;m1*g;0;m2*g]; B=inv(A)*C;a1=B(1);a2=B(2); N1=B(3); N2=B(4); end调用in.m 的命令文件: >> m1=1;m2=2;t=30*pi/180; >> [a1,a2,N1,N2]=in(m1,m2,t) 运行结果: a1 =6.5333 a2 =1.8860 N1 =7.5440 N2 =26.1333 4.设 f(x)=01.011.01)3()2(42+++--x x ,编写一个MATLAB 函数文件fx.m ,使得调用f(x)时,x 可用矩阵代入,得出的f(x)为同阶矩阵。

函数编程

函数编程

实验4:函数编程(1)一、实验目的1.掌握定义函数的方法。

2.掌握函数声明、函数调用的一般方法。

3.掌握函数实参与形参的对应关系,以及“值传递”的方式。

二、实验要求1.复习函数的定义和调用方法。

2.编写程序,运行程序并记录运行结果。

3.认真填写实验报告。

三、实验内容3.写一个判别素数的函数,在主函数输入一个整数,输出是否素数的信息。

本程序应当准备以下测试数据:17、34、2、1、0。

分别运行并检查结果是否正确。

此步骤类型为调试程序,以下为此题的程序,其中有一些错误,请调试使之正确。

#include <stdio.h>#include<math.h>void main(){int prime(int n);int n;printf("\ninput an integer:");scanf("%d",&n);if(prime(n))printf("\n %d is a prime.\n",n);elseprintf("\n %d is not a prime. \n",n);}prime(int n){int flag=1,i;for(i=2;i<n/2 && flag==1;i++)if(n%i==0)flag=0;else n=1;return(i);}4.调用一个判别素数的函数,主函数中求出1~100之间的所有素数。

#include<stdio.h>#include<math.h>sushu(int m){int k,i;k=sqrt(m);for(i=2;i<=k;i++)if(m%i==0) break;if(i>k)printf("%d ",m);return(k);}void main()第2章上机实验指导·137·{int a,n;for(n=2;n<=100;n++)a=sushu(n);printf("%d",a);}5.编写一个用海伦公式求任意三角形面积的函数,在主函数中输入三边长调用它,计算任意三角形的面积。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

闽 江 学 院 电 子 系
实 验 报 告 2216n π⎛⎫++= ⎪⎝⎭
()()()()2246655721212n n n n π⎛⎫⨯⨯⎫⎛⎫⎛⎫= ⎪⎪⎪ ⎪ ⎪⨯-+⎭⎝⎭
⎝⎭⎝⎭ 要求用函数文件的定义和调用来实现。

、利用函数文件,实现极坐标(,)ρθ与直角坐标(,)x y 之间的转换,和nargout ,实现以下功能的函数:若输入只有一个参数,参数为半径的球的体积;若输入有两个参数,输出分别以该参数为底面半径和高的圆柱体积;若输入有三个参数,输出分别以该参数为三 条边的长方体的体积;若输入参数多于
五、实验环境(使用的软硬件):Matlab6.5
六、实验步骤及操作:
1.计算立方体体积
函数文件lifang.m
2求函数值
(1)
(2)
3.极坐标与直角坐标的转换
4.求体积
5.用函数文件求函数值
七、思考题:
1.总结函数文件和命令文件的区别。

答:函数文件区别于命令文件之处在于命令文件的变量在文件执行完成后保留在工作空间中,而函数文件内定义的变量只在函数文件内起作用,文件执行完后即被清除。

2.当n 分别取100、1000、10000时,求下式的值:111114166443n ⎛⎫+++++= ⎪⎝⎭
3.编写一个函数文件,用于求两个矩阵的乘积和点乘,然后在命令文件中调用该函数。

报告评分:
指导教师签字:批阅日期:。

相关文档
最新文档