初见函数
初见函数
1.初见函数:c语言中的函数不同于我们中学时期的函数,c语言中的函数体现了“模块化设计”的理念,可以将规模大的复杂的问题转换成多个简易操作的问题,所以当遇到处理类型相同且复杂的问题时,函数就很有存在的必要了。
但是c语言中的函数和像y=x的数学函数有相似之处,可以便于我们理解。y=x的数学函数体现了x和y的线性关系,以常见的求阶乘函数为例:
n就类似于x,return返回的值就类似于y。两类函数的执行都是按照相同的线性计算得到的结果。
2.函数的定义和用法:示例:如上图定义为int类型,函数原型为int factorial(int n);定义函数原型时分号不可省略,无返回类型省掉void会自动默认为int。
无论自定义的函数是怎样被调用,程序的执行都是从int main()的主调函数进入的。
3.值得关注的重点:(1)分清函数的类型(有返回和不反回)无返回的类型为void,二者不同的就在于有返回类型的函数执行完之后再次回到主调函数(常用来处理计算,判断等问题),需要return传回返回值(表达式),而不返回void类型函数执行完不再返回主调函数(通常是为了起某些作用),return通常省略,不能使用带值的return。
(2)本地变量;(有返回类型)函数的执行是靠传值来完成的,每个函数都有自己的变量空间,定义在函数内部含变量及参数就是本地变量,即使变量名相同但在每个函数的内部是互不干扰的,因为这些变量的作用范围是不同的。
(3)返回:函数不能进行多个值的返回。
(4)调用执行:c语言中函数不能被嵌套定义,但可以被嵌套执行:如下图所示
prime函数用来判断一个数是不是素数,PrimeSum函数用来计算m到n之间的素数和,即判断素数的函数被调用在求素数和的函数中。
4.学习心得:对于编程题而言,刷题是必不可少的,但更应该关注刷题的意义,对自己写的每一段代码,要清楚它存在的意义和作用,对于新学的概念和知识应思考能怎样被使用,另外,实现一题多解也是一个很好的开拓思维的方式。
比如最基础的求阶乘函数:它可以有如下几种写法:
最常见:
学了静态变量之后可以有另一种写法:
综上都只是浅显的理解,并不太深,若有错误,欢迎指正
原文地址:https://www.cnblogs.com/74520zhz/p/zhu_74520zhz.html
- 重温delphi之控制台程序:Hello World!
- Docker集中化web界面管理平台-Shipyard部署记录
- "Goole项目托管"及"CodePlex发布开源项目"要点
- Docker网络解决方案-Calico部署记录
- c#中开发ActiveX的学习笔记
- Android新手之旅(4) 通过HTTP访问web
- Flash/Flex学习笔记(9):ActionScript3.0与Javascript的相互调用
- Flash/Flex学习笔记(8):ActionScript3.0中的面对对象
- Docker网络解决方案-Weave部署记录
- Flash/Flex学习笔记(7):FMS3.5基于IIS的安装
- Netdata---Linux系统性能实时监控平台部署记录
- linux下向一个文件中的某行插入数据的做法
- Flash/Flex学习笔记(2):捕获摄像头
- split-brain 脑裂问题(Keepalived)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- python中return如何写
- PHP钩子实现方法解析
- 浅谈numpy中函数resize与reshape,ravel与flatten的区别
- PHP文件类型检查及fileinfo模块安装使用详解
- PHP封装的分页类与简单用法示例
- ThinkPHP3.2框架自带分页功能实现方法示例
- PHP获取访问设备信息的方法示例
- PHP实现微信提现功能
- PHP实现微信退款功能
- PHP利用pdo_odbc实现连接数据库示例【基于ThinkPHP5.1搭建的项目】
- PHP登录验证功能示例【用户名、密码、验证码、数据库、已登陆验证、自动登录和注销登录等】
- 实现php删除链表中重复的结点
- Yii2.0框架实现带分页的多条件搜索功能示例
- 定位地理位置PHP判断员工打卡签到经纬度是否在打卡之内
- PHP APP微信提现接口代码