重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
理论上来说
成都创新互联公司企业建站,10多年网站建设经验,专注于网站建设技术,精于网页设计,有多年建站和网站代运营经验,设计师为客户打造网络企业风格,提供周到的建站售前咨询和贴心的售后服务。对于做网站、网站设计中不同领域进行深入了解和探索,创新互联在网站建设中充分了解客户行业的需求,以灵动的思维在网页中充分展现,通过对客户行业精准市场调研,为客户提供的解决方案。
自定义函数可以不需要使用
所有过程
都写在主函数里面也可以的。
但是,实际上
1
如果同样的功能需要被多次使用。
比如,要在程序不同时间对数组进行排序。
那么每个排序点,把排序算法实现一遍,明显是白费劲的。
这时定义一个排序函数就会很好看了。
2
当功能较多,同时代码量比较大的时候
按照功能抽象出一个个函数,这样无论是代码阅读
还是维护
都会省力很多。
想象一下,如果一个程序中
有一千个函数(其实并不算多)
每个函数中定义三个局部变量。
那么要都写在主函数里面,就要定义3000个局部变量,管理,维护这些局部变量
甚至给他们想个不重复的名字
就已经足够让人崩溃了
不可以,即使主函数中也不可以,C语言只允许在函数中声明和嵌套调用。
C语言中是不允许作嵌套的函数定义。因此程序中各个函数之间是平行的,不存在上一级函数和下一级函数的问题,这样是为了简化C语言编译器的逻辑性。
可以在函数中声明函数(嵌套声明),但是不能在函数中定义函数(嵌套定义)。
p.s.:有些编译器允许嵌套定义,但是最好不要嵌套定义,因为C标准规定不能嵌套定义。
1使用函数后,编程可以更加的模块化,以后使用的时候,可以直接拿过来用。
2问题描述更加简洁清晰。
3程序没有大段不易理解的东西
//C语中定义函数,是完成某项特定的功能,知道它完成的功能就可以使用它,体现了它的模块化的特点.例如我们平常学的输出就是一个函数,只不过是系统定义好的
只要我想输出某个东西,我就可以调用printf来完成相应的功能.
例如:main()
{ int a,b,c;
scanf("%d,%d",a,b);
c=max(a,b);
printf("Max is %d",c);
}
int max(int x, int y)//这 个就是我们定义的函数,这个函数是求两个数的最大值.形参x,y本身都是没有值,什么时候有值呢,是我们调用的时候,c=max(a,b),它的意思把a给x,b给y.
{ int z;
z=xy?x:y;
return(z);
}