c语言程序int f (int x) { int y,z; z=f (y); return (2*z); } 详细解说

如题所述

给出的程序有些问题,给出一个正确的如下:
/*这是一个递归调用的函数*/
int f (int x)
{
int z; /*定义整型变量z*/
if(x==0) return 1; /*当x=0时,f(0)=1,这是退出递归的条件*/
if(x>0) z=f (x-1); /*这是在调用f(x)函数时,x大于0的情况*/
else if(x<0) z=f (x+1); /*这是在调用f(x)函数时,x小于0的情况*/
return (2*z); /*返回2*f(x)的值,当x=0时,返回2*/
}

希望回答对你有帮助。
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-09-23
这种是自身的迭代函数吧,应该会给出个初值的吧,比如给出f(0)=2,f(1)=2*f(0)=4.
第2个回答  2010-09-23
这实际上是递归调用
但是这个程序有点问题哦
根本就没出现x值呀

...{ int z; if(x>y) z=x; else z=y; return(z); }是什么意思啊_百度知 ...
int max(int x,int,y)---赋值函数max,定义整型常量x和y { int z;---定义z if(X>Y) Z=X;---括号内为条件式,如果此条件式成立,则Z=X else Z=Y;---如果上述条件式不成立,则Z=Y return(Z);---jiangzhege Z 的结果返回至max函数调用处(这不是完整的代码,上面还有一段,...

C语言的return是什么意思
详情请查看视频回答

C语言函数的递归调用
先调用函数f,然后把返回值赋值给z。不过这个函数不对,没有退出条件,无法停止。举例说明吧 int f(int x){ if(x==0){ return 1;} else { return x*f(x-1);} } 假如f(3)那么 第一次f(3):x!=0,调用f(2)第二次f(2):x!=0,调用f(1)第三次f(1):x!=0,调用f(0...

...b) { return(a+b);} main( ) { int x=2,y=5,z=8,r; r=func(func(x...
r=func(func(x,y),z);先func(x,y),返回x+y;就是7;然后func(7,z),返回7 + z;就是15

int f(int x) { return ((x>0) ? x* f(x-1):2;int i;i=f(f(1))}...
int f(int x)\/\/定义的是一个函数,函数名为f 参数为x 数据类型为int,该函数int f(int x),表明返回值是一个int类型的,表示乘法运算, x* f(x-1) =x 乘以f(x-1)的函数运行的返回值

C语言如何调用函数
C语言中,函数调用的一般形式为:函数名(实际参数表)对无参函数调用时则无实际参数表。实际参数表中的参数可以是常数、变量或其它构造类型数据及表达式。各实参之间用逗号分隔。include<stdio.h>int fun(int x, int y); \/\/ 函数声明,如果函数写在被调用处之前,可以不用声明void main(){int a=1...

fun(int x,int y,int z){z=x*x+y*y;}main(){int a=31;fun(5,2,a);p...
。c++可以通过引用,也就是别名来改变, 比如把函数定义成 void fun(int,int,int &)这样在函数里,对第三个参数做改变,相应的实参也会改变,因为它们是同一个。 这就是引用类型的作用。也可以通过指针所指来修改地址值 也就是 void fun (int ,int int * )...

设x,y,z均为int类型变量,请用C语言的表达式描述以下内容。(1)x或y中...
x、y中有且只有一个小于z表示为 x<z&&y>=z||x>=z&&y<z

...{ int x,y,z,t; x=y=z=1; t=++x||++y&&++z; printf("x=%d y=...
首先我们看t=++x||++y&&++z;这个表达式是个赋值表达式对吧。只不过赋的值此时还是个复合的表达式而已那么要想t有值赋就得先计算出(++x||++y&&++z)这个表达式的值 根据c的运算符的优先级别得知++在此时级别最高(级别高意味着先运算咯(这个你自己看书))再根据c语言的运算符的结合方向(结合...

以下程序的输出结果是( )。 main() { int x=2,y=-1,z=2;
选B if(x<y)的判断已经不会执行,后面的else是接上面那个不会执行的if,所以z的值不变,输出2

相似回答