c语言对函数的认识(C语言自学函数说明4)
c语言对函数的认识(C语言自学函数说明4)
2024-09-29 07:33:46  作者:狠狠想迩  网址:https://m.xinb2b.cn/sport/zhr450516.html

1、函数的返回值与函数要实现的功能的关系

比如,对于月历程序


函数3设计为不返回函数值,所以,定义为void类型。自然,函数功能最后也没有使用return语句。

但是,如果我设计成这样,可不可以?


那也就是说,我设计成需要返回一个int类型的结果值,然后通过return 0;这个0也可以随便换成其他的值,比如5 10 25 14等任意值,没关系,那现在的意思是,这个int与return配合使用,与函数要实现的功能以及函数本身有没有真的能解算出一个结果有绝对的关系吗?

没有!记住没有!没有!没有!

就像上面这个一样,改成有返回值,与原来没有返回值的功能一样,并没有改变啥!

所以,一个函数要不要返回值,以及返回什么值,其实与函数功能并没有严格的对应,可以说完全是程序员自己在设定,当然,如果一个函数功能本身就可以得出一个结果值,或者确实需要一个结果值,那我们可以顺坡下驴,就按照函数的要求进行设定得了,省的我们给他设定,比如


函数1呢,被设定为用来判断一个年份是不是闰年,而这个是不是闰年的结果呢,又被用到


函数2的里面继续使用,这样,出现了连续套用的情况,那如果人为不给函数1设计成带回来一个返回值来表示判断的年是闰年还是平年,那函数2里面怎么决定给month_day是赋值29还是28呢?这样,为了省事,那就把函数2要设计成函数本身需要返回值的这种状况,那就没必要人为非要给他设计成无返回值。

所以,原则上函数要设计成什么类型返回值,要不要设计成有返回值还是无返回值,完全是人为的,即使函数功能要返回值,但我就是把它设计成无返回值,又怕啥?对吧,反过来一样,函数就不需要返回值,但我就把它设计成有返回值,又怕啥?没关系的,但是,我们要顺其自然,做到顺应和谐,如果函数就需要一个返回值,那你就自然地给它设计成有返回值的,如果函数不要返回值,那就设计成无类型返回值得了!免得给自己找别扭,对吧!

那对应的,对函数调用的时候,本来无返回值函数调用很简单,看前面给你讲解的函数说明2的内容,那现在如果你把本来无需返回的函数设计成有了返回值类型,那按照正常的,有返回值是可以继续参与运算的,那你这个返回值并没有多大价值,没必要参与其他的运算,那我调用这个函数咋办?其实很简单,也像无返回值一样,直接写函数调用部分就行,不需要搞成参与运算的形式,那个返回值也自然丢弃了,没地儿用它!

我们没必要固执认为不是有返回值吗?返回这个值之后还得参加二次运算,所以,这是很灵活的,一定要理解!

其实,你再看,在函数3里面,调用了函数2,但是正好是放在if的结构里,你看到的调用正好就是没有显式参与比较的形式,如果你一定要看到函数返回值参与运算,那就写成is_leap_year(year_2)==1或者is_leap_year(year_2)!=0这种形式,那你就理解了参与运算了,只不过if结构里面特殊,简化了比较判断运算而已!

函数的返回值情况,可以分两种,一种是,函数功能就是要运算得出一个结果,比如,我给你三边,函数就可以给我得出一个三角形的面积,这个面积结果就正好能对应到为函数设计的返回值。第二种,还是这个三角形,我给你三边,但是我没有要让你求面积,而是问,是否可以构成一个三角形,那这个需要一个结果,可结果是啥?仅仅是一个“是”或者“不是”的逻辑结果,并没有规定要具体得到一个什么值,那怎么办?只能人为来定了,意思是你只要能正确表达出能构成三角形还是不能构成三角形的效果就行,那好,我说用1表示可构成,0表示不能构成,或者用字符Y表示能构成,N表示不能构成,那都是可以的,没关系!如果你思维还没开放,我说用8表示能构成,用5表示不能构成,可以吗,没关系,可以的!

那我们在设计函数的时候,到底设计成无返回值还是有返回值,那就有了参照了,你可以认为参考函数的功能需求就行,最后,你还要考虑下主调函数的需求,或者说主调函数需要用你这个被调函数返回的值,那你没有把被调函数设计成有返回值,那你要怎么解决这种矛盾!

2、函数的有参与无参

原则上,把函数设计成无参数,那就是说,函数本身把所有需要的都考虑了,不需要开放给主调函数给我传值或者传地址,也就是不需要外界干预,那没关系,你都解决了!省的主调函数为被调函数考虑传什么值了!

当然,函数设计成必须由主调函数给传一个值或者地址才能进行运算,那就需要把部分变量开放出来,设计成有参数的形式,这两种也是很灵活的,原则也都是人为的,你想设计成啥样的就设计成啥样的,当然,结合函数实际的功能需求更好!

好了,那你现在考虑考虑,是否可以把月历函数程序修改下,我不是设计的函数2和函数3都是有参数的嘛,那你能不能修改成不要参数,以及不要返回值等,看能不能还能实现月历打印!

但一个要求,函数必须设计成一个函数一个功能,不能再把多个功能设计在一个函数里!

  • 哪一类人想练瑜伽(练瑜伽对身体有很多好处)
  • 2024-09-29练瑜伽对身体有很多好处体重过高,身体过胖,失眠患者,精神压力很大的人,神经性头痛患者,固醇偏高的人,周身疼痛、背部疼痛、后背、肩部及颈部感到酸痛的朋友,长时间坐在电脑前的人,妇科炎症患者,准备生小孩的女性,为产后的体形走样。
  • 为实现两个一百年目标团结奋斗(把实现两个一百年)
  • 2024-09-29把实现两个一百年“我坚信,中国共产党成立100周年时,全面建成小康社会的目标一定能够实现;我坚信,中华人民共和国成立100周年之时,把我国建成富强、民主、文明、和谐的社会主义现代化国家的目标一定会实现;我更坚信,中华。
  • 单位签保密协议是对工资的保密吗(薪酬保密制度是否合法)
  • 2024-09-29薪酬保密制度是否合法■点击右上角【关注】“杨强律师”头条号,私信发送“法律咨询”,即可享受专业法律咨询服务近日,盒马生鲜的员工小郑因为企业的薪资保密制度,遭到了单位开除,其原因是小郑收到了自己的工资单后,不小心被公司同事。
  • 小米手环4操作(用手环控制家电是怎样一种体验)
  • 2024-09-29用手环控制家电是怎样一种体验2019年6月11日,小米在北京举行了米家智能生活新品发布会,在会上也发布了不少有意思的产品,当然呼声最高的当属小米手环4,此次小米手环4升级主要有两点,第一,屏幕升级为全彩AMOLED屏幕,第二,支。
  • 重阳节的来历及风俗及诗句(关于重阳节的由来)
  • 2024-09-29关于重阳节的由来重阳节,农历九月初九,二九相重,称为“重九”汉中叶以后的儒家阴阳观,有六阴九阳九是阳数,固重九亦叫“重阳”民间在该日有登高的风俗,所以重阳节又称“登高节”还有重九节、茱萸、菊花节等说法除此之外,九月初。
  • 潍坊24小时自助车管所地址(潍坊车管所国庆期间)
  • 2024-09-29潍坊车管所国庆期间国庆期间,潍坊市公安局车辆管理所落实落细“我为群众办实事”活动,着力解决群众“因外出工作、上班时间没空办事,休息时间没处办事”的困扰,坚守一线岗位,采取业务大厅人工受理和24小时智能自助办理相结合的方。
  • 古代御膳房传菜的叫什么(皇帝吃不完的酒菜怎么办)
  • 2024-09-29皇帝吃不完的酒菜怎么办古代御膳房传菜的叫侍卫御膳房把饭菜准备好之后,要在用膳时刻由侍卫传菜,并且,每道菜要按规定的布局进行摆放皇帝吃饭前,自然也是怕被人下毒,一般会用银针等验毒,但是这样皇帝仍然不放心,他会找身边的宦官先试。
  • 思念无声却成疾(何为思念成疾)
  • 2024-09-29何为思念成疾一场暴雨,让闷热的天气瞬间凉爽,晚间睡得又香又熟,清晨7时才起床,母亲已煮好稀饭,我坐在住宅入户间的凉椅上一边与母亲聊家常,一边修剪她的指甲,等了半小时也不见父亲大人的身影,往日6时出门晨走也该回来了。
  • 高中地理山地石灰岩玄武岩知识点 高中地理试题解析第31题
  • 2024-09-29高中地理山地石灰岩玄武岩知识点 高中地理试题解析第31题知识点岩浆岩、沉积岩、变质岩地球上的岩石,按照成因可以分为三类:①岩浆岩:地幔的岩浆在内压力的作用下,侵入地壳的上部,冷却凝结形成了侵入岩(例如花岗岩);如果岩浆继续向上前进,喷出地表,则冷却凝结形成。
  • 吊柿饼的功效与作用(吊柿饼有什么功效与作用)
  • 2024-09-29吊柿饼有什么功效与作用柿饼性味:生柿甘涩、凉、无毒;干柿(柿饼)甘、温、无毒柿子有助于降低血压,软化血管,增加冠状动脉流量,并且能活血消炎,改善心血管功能入脾、肺、大肠润心肺,止咳化痰,清热解渴,健脾涩肠柿子中的有机酸等有。
  • 实际工作中如何落实三个规定(领导经济工作为什么要做到)
  • 2024-09-29领导经济工作为什么要做到今年中央经济工作会议提出,“领导干部要提高领导经济工作的专业能力”,要“加强经济学知识、科技知识学习”同时,又强调了领导干部要做到“敬畏历史、敬畏文化、敬畏生态”,慎重决策、慎重用权做好经济工作,领导。
  • 苏联有多强大又为什么会解体(苏联被迫解体后)
  • 2024-09-29苏联被迫解体后回首前几千年历史纵观世界范围内各个国家地区,虽然我们能够称这部历史为文明史、发展史和进步史,但在经济发展科技进步、文化繁荣的各个积极景象之中,也有着不少的骇人行为,诸如战争、侵略、分裂等等一系列行为而。