美文网首页算法
两个月陪你刷ccf(9)——函数、变量、递归

两个月陪你刷ccf(9)——函数、变量、递归

作者: 二向砸 | 来源:发表于2020-01-26 17:41 被阅读0次

:①函数把实现一定功能的语句集中在一起,使得要使用时方便调用实现某一功能。

②函数前加void表示只实现语句而不返回变量,返回类型为空。

③使用return来返回函数需要传回的数据。

④main函数返回0的意义在于告知系统程序正常终止。

有参函数

#include<stdio.h>

int judge(intx)//返回类型是int,return后的数据类型需要与此相同

 {if(x>0) return 1;

else if(x==0)

return 0;

else return -1;}

int main(){

int a,ans;

scanf("%d",&a);

ans=judge(a);

printf("%d\n",ans);

return 0;}

结果:

注意两个概念:

①全局变量:定义在所有函数前面,为所有程序段共用

#include<stdio.h>

int x;//全局变量  

void change(){x=x+1;}

int main(){x=10;

change();

printf("%d\n",x);

return 0;}

结果:

②局部变量:定义在函数内部,只在内部生效,函数结束则销毁

#include<stdio.h>

void change(intx)

{x=x+1;}

int main(){

int x=10;

change(x);//与main里的x 是不同变量! 

printf("%d\n",x); 

return 0;}

结果:

函数的递归调用,后面会详细介绍:函数自己调用自己

计算n的阶乘:

#include<stdio.h>

int F(intn){

if(n==0) return1;

else return F(n-1)*n;}

int main(){

int n;

scanf("%d",&n);

printf("%d\n",F(n));

return 0;}

结果:

递归虽好,也不可常用,数值过大时计算效果还不如普通算法。

相关文章

网友评论

    本文标题:两个月陪你刷ccf(9)——函数、变量、递归

    本文链接:https://www.haomeiwen.com/subject/nugjthtx.html