【c语言】厄密多项式--用递归实现

/* 厄密多项式是这样定义的:
      n <= 0时,h(n(x)) = 1;
	  n = 1时,h(n(x)) = 2*x;
	  n >= 2时,h(n(x)) = 2*x*(h(n-1)(x)) - 2*(n-1)*(h(n-2)(x));
编写递归函数,函数应该和下面的函数原型匹配:
int hermite(int n, int x)*/

#include <stdio.h>

int hermite(int n, int x)
{
	int h = 0;
	if( n <= 0 )
		h = 1;
	else if( n == 1 )
		h = 2 * x;
	else
		h = 2 * x * hermite( n - 1, x ) - 2 * ( n - 1 ) * hermite( n - 2, x );
	return h;
}

int main()
{
	printf("%d\n",hermite(3,2));
	return 0;
}

下边截图分别是 n=0,n=1,n=3,x=2时候的例子

时间: 2024-11-07 11:01:38

【c语言】厄密多项式--用递归实现的相关文章

【C语言】厄密多项式

#include<stdio.h> /* 厄密多项式 */ int hermite(int n, int x) { if(n<=0) return 1; else if(n==1) return 2*x; else if(n>=2) return 2*x*hermite(n-1,x)-2*(n-1)*hermite(n-2,x); } int main() { int n,x; puts("input N and X:"); scanf("%d%d&q

【C语言】编写递归函数编写厄密多项式。

/*编写递归函数编写厄密多项式,函数应该和下面的函数原型匹配: int hermite(int n, int x) 厄密多项式是这样定义的: n <= 0时,h(n(x)) = 1; n = 1时,h(n(x)) = 2*x; n >= 2时,h(n(x)) = 2*x*(h(n-1)(x)) - 2*(n-1)*(h(n-2)(x)); 编写递归函数,函数应该和下面的函数原型匹配: int hermite(int n, int x)*/ #include <stdio.h> in

用递归函数计算厄密多项式

<C和指针>第7章第1道编程题: Hermite Polynomials(厄密多项式)是这样定义的: 例如,H3(2)的值是40.请编写一个递归函数,计算Hn(x)的值.函数原型为: int hermite( int n, int x ); 1 /* 2 ** 计算Hermite Polynomials(厄密多项式)的值 3 */ 4 5 #include <stdio.h> 6 7 int hermite( int n, int x ); 8 9 int 10 main() 11

【C语言】 厄密多项式(递归函数)

所以他的递归函数为: <span style="font-size:18px;">#include<stdio.h> int hermite(int n,int x) { if (n<0) return 1; if (n=1) return 2*x; if (n>2) return 2*(hermite(n-1,x))-2*(n-1)*(hermite(n-2,x)); } int main() { hermite(1,2); printf(&quo

函数递归(厄密多项式)

n <= 0  : 1 Hn(x)  = n   =  1 :  2x n  >= 2 :  2xHn-1(x) - 2(n -1)Hn-2(x) #include<stdio.h> int hermite(int n, int x) { if(n <= 0) return 1; else if(1 == n) return 2*x; else return 2 * x * hermite(n-1, x) - 2 * (n-1) * hermite(n-2, x); } in

用c语言实现 Hermite Polynomials(厄密多项式)

编写递归函数,函数应该和下面的函数原型匹配: int hermite(int n, int x) #include<stdio.h> int main() { int hermite(int n, int x); printf("%d\n",hermite(2,1)); return 0; } int hermite(int n, int x) { int sum; if(n<=0) { sum=1; } else if(n==1) { sum=2*x; } else

C语言-第36课 - 函数递归与函数设计技巧

第36课 - 函数递归与函数设计技巧 一. 递归 递归概述 (1) 递归是数学领域中的概念在程序设计中的应用. (2) 递归是一种强有力的程序设计的方法. (3) 递归的本质为函数内部在适当的时候调用自身. 组成部分 (1)递归点:以不同参数调用自身. (2)出口:不在递归调用 下面就是求一个数的阶乘的函数: #include <stdio.h> int func(int x) { if( x > 1 ) { return x * func(x - 1);  //递归点 } else {

C语言实现newton多项式插值法

博主原创,未经允许,不得转载! #define _CRT_SECURE_NO_DEPRECATE#include<stdio.h>#include<stdlib.h>#include<math.h>;#define n 6void ark(float A[][6], float x1[], float y1[],int n1) { for (int r = 0; r <= n1 - 1; r++) { A[r][0] = y1[r]; } for (int k =

c语言函数, 函数调用及函数递归

1. 函数的定义: 返回值类型 函数名(形参列表) {函数体(函数的实现内容)}, 注意: 如果没有参数, 小括号也是必不可少的.  函数与函数之间可以嵌套调用(也就是在一个函数内部可以调用另外一个函数), 但是不能嵌套定义(不能在一个函数内部定义另外一个函数) 形参: 形式上的参数, 在函数定义时, 给定的参数叫做形参, 是一个一个的变量, 存储的数据在调用之前完未知 实参: 函数调用时给定的参数叫做实参, 是一个唯一确定的数据. 实参向形参传递的过程是一个拷贝的过程 函数相当于公司的部门,