C语言中函数怎么自己调用自己

Python015

C语言中函数怎么自己调用自己,第1张

一,函数调用的一般形式为:

函数名(实参列表)

实参可以是常数、变量、表达式等,多个实参用逗号,分隔。

在c语言中,函数调用的方式有多种,例如:

在函数调用中还应该注意的一个问题是求值顺序的问题。所谓求值顺序是指对实参列表中各个参数是自左向右使用呢,还是自右向左使用。对此,各系统的规定不一定相同。

【示例】在vc6.0下运行以下代码。

运行结果:

8

7

6

7

可见vc

6.0是按照从右至左的顺序求值。如果按照从左至右求值,结果应为:

9

10

9

8

函数的嵌套调用

函数不能嵌套定义,但可以嵌套调用,也就是在一个函数的定义中出现对另一个函数的调用。这样就出现了函数的嵌套调用,即在被调函数中又调用其它函数。

【示例】计算sum

=

1!

+

2!

+

3!

+

...

+

(n-1)!

+

n!

分析:可以编写两个函数,一个用来计算阶乘,一个用来计算累加的和。

#include

//求阶乘

long

factorial(int

n){

int

i

long

result=1

for(i=1

i<=n

i++){

result

*=

n

}

return

result

}

//

求累加的和

long

sum(long

n){

int

i

long

result

=

0

for(i=1

i<=n

i++){

//嵌套调用

result

+=

factorial(n)

}

return

result

}

int

main(){

printf("1!+2!+...+9!+10!

=

%ld\n",

sum(10))

return

0

}

二,有些自定义函数可能会被频繁的调用,所以写在一个c文件里是不太方便的。应该把这些自定义的函数写在一个c文件里,同时在一个头文件.h文件里声明。主函数可以通过引用该头文件然后调用需要的自定义函数。

1,举例:在头文件(.h)里声明自定义函数

2,在一个c语言文件里写下自定义函数的实现

3,在主函数中调用自定义函数

4,最后编译所有的涉及到的c文件,头文件可以不管

在使用一个函数之前必须先对他进行声明:

//void B()声明B函数的存在。void A(){B()//非法,程序执行到此时并不知道B函数的存在。}void B(){}

或者

#include <stdio.h>

#include <stdlib.h>

#include <math.h>

int fa(int n)

{

int a

for(a=2a<=sqrt(n*1.0),n%a!=0a++)

if(a>sqrt(n*1.0))

return(1)

else

return(0)

}

void main( )

{

int n,q

scanf("%d",&n)

扩展资料

#include <stdio.h>

#include <stdlib.h>

#include <math.h>

int fa(int n)

{

int a

for(a=2a<=sqrt(n*1.0),n%a!=0a++)

if(a>sqrt(n*1.0))

return(1)

else

return(0)

}

void main( )

{

int n,q

scanf("%d",&n)

if(fa(n)==1)

printf("n")

else

printf("y")

system("pause")

exit(0)

}

参考资料:百度百科 - C语言函数