网站建设资讯

NEWS

网站建设资讯

C语言函数里面调用自己,c语言函数自己调用函数本身

C语言中,函数是否可以直接或间接调用自己!!求大神!!求解析!!!

可以.C语言中,任何函数都可以直接或间接地被自己或其他函数调用,包括main函数(注意我说的是C,不是C++)

创新互联客户idc服务中心,提供德阳机房服务器托管、成都服务器、成都主机托管、成都双线服务器等业务的一站式服务。通过各地的服务中心,我们向成都用户提供优质廉价的产品以及开放、透明、稳定、高性价比的服务,资深网络工程师在机房提供7*24小时标准级技术保障。

例如,典型的利用main递归实现逆序输出

#include stdio.h

int main()

{

int c;

if((c=getchar()) != EOF) //EOF 用Ctrl+Z 或者 F6

{

main();

}

printf("%c",c);

return 0;

}

c语言中主函数能调用自己吗?

主函数不能调用自己。

主函数实际上是有参函数,从操作系统传入变量,结束时有数值返回操作系统。

int main(int argc, char *argv[]){

return 0;

}

其中:

int argc, char *argv[] 从操作系统传入

return 0; 返回操作系统

如果你的数据不需要同操作系统发生关系,你可以写成自定义函数,主函数里就一个语句--调用这个自定义函数。

C语言中能否在一个自定义函数中调用另一个自定义函数?

当然可以!

C语言程序的最基本的模块就是函数,

该程序规定:任意函数都可以调用其它任意一个函数,包括函数本身;

1、函数调用自己本身, 这种称为递归;

通过递归,计算1+2+3+...+n值的代码:

2、自定义函数调用其它自定义函数的例子:

这个例子就是主函数调用自定义函数fun2,然后fun2调用另一个自定义函数fun1;

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=2;a=sqrt(n*1.0),n%a!=0;a++);

if(asqrt(n*1.0))

return(1);

else

return(0);

}

void main( )

{

int n,q;

scanf("%d",n);

扩展资料

从函数定义的角度看,函数可分为库函数和用户定义函数两种。

(1)库函数

由C系统提供,用户无须定义, 也不必在程序中作类型说明,只需在程序前包含有该函数原型的头文件即可在程序中直接调用。在前面各章的例题中反复用到printf 、 scanf 、 getchar 、putchar、gets、puts、strcat等函数均属此类。

(2)用户定义函数

由用户按需要写的函数。对于用户自定义函数, 不仅要在程序中定义函数本身, 而且在主调函数模块中还必须对该被调函数进行类型说明,然后才能使用。

C语言调用自身的函数

其实是这样的,主调函数会继续执行被调函数之后的语句。

假设第一次执行travel,判断root!=NULL,则会第二次执行travel,此处是travel(root-l);。

第二次执行的travel语句肯定是要返回的,当它返回之后,继续执行第一次travel中的print_s(root-data);。

然后再执行第三次travel,此处是travel(root-r);。

每次travel函数在if条件满足,或者下层travel(root-r);返回之后,才会返回。

同理继续向下递推。

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=2;a=sqrt(n*1.0),n%a!=0;a++);

if(asqrt(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=2;a=sqrt(n*1.0),n%a!=0;a++);

if(asqrt(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语言函数


当前文章:C语言函数里面调用自己,c语言函数自己调用函数本身
文章转载:http://cdweb.net/article/dsgigii.html