`
比深蓝还要蓝
  • 浏览: 14861 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

C语言:第八课

阅读更多
一、在C语言程序设计时,通常将一个大的程序按功能分成若干个较小的模块,每个模块编写成结构清晰、接口简单、容易理解的程序段——函数。这种方法叫模块化程序设计方法。系统提供的标准函数,又称为库函数。

二、函数的定义就是写出函数的全部内容,即完成函数功能的程序块。一般格式为:
  函数类型 函数名称(形式参数表){
  说明语句序列
  可执行语句序列
  }


说明:

1、函数的类型可以是险滩函数和数组以外的任何类型,但对一个具体的函数而言,它的类型是惟一的,并且通常与函数的返回值的类型一致。如果缺少类型说明,那么编译程序将认为该函数的类型是int型。

2、形参可以是空的,也可以是由多个形参组成的,每个形参之间用逗号隔开。不管形参表中是否有参数,都要用圆括号括起来。

3、C语言中的函数没有从属关系,不能嵌套定义,各函数之间是独立的。

4、函数定义:指出函数通过return返回值的类型,除了取常用的各种数据类型外,还有种void型,即无返回值,默认的数据类型为int。

5、函数声明:被调用的函数需要先声明后调用,但若定义位于调用前面,可省略声明。

三、从形式上,函数分为无参函数和有函数。即在调用函数时,看主调函数和被调函数之间有没有数据传输。

  从函数的值来看,函数分为无返回值的函数和有返回值的函数。任何一个函数,只要执行到return语句,函数就结束运行,返回到调用处。如果return语句后的表达式为逗号表达式,那么它的返回值为逗号表达式的最后一个表达式的值,即一个函数只有一个返回值。

四、非数组作为函数的参数,遵守“值传递”方式。数组名作为函数参数时,采用“地址传递”的方式。

  数组名作为函数参数时,实参数组的长度必须是确定的,而形参数组的长度可以是不确定的(但是[]不能省略)。惹形参数组有长度,则一定要大于实参数组的长度。

五、函数的嵌套调用,是指一个函数可以被其他函数调用,同时,它可以调用其他别的函数。

  函数的递归调用有两种形式。一种是直接递归调用,即一个函数可直接调用该函数本身;另一种是间接递归调用,即一个可间接地调用该函数本身。能够递归调用的函数是一种递归函数。

六、当被调用函数是有参函数时,主调函数和被调函数间有数据传递关系。定义函数时的参数称为形式参数,简称形参。形参在函数未被使用时没有确定值,只是形式上的参数;调用函数时的参数称为实参,实参可以是变量、常量或表达式,有确定的值,是实实在在的参数。函数定义时的形参不占内存,只有发生调用时,参数才被分配内存单元,接受实参传来的值。

    定义函数时必须定义形参的类型。函数的形参和实参个数要求相等,对应类型一致,且顺序相同。形参和实参可以同名,形参是局部于该函数的变量,即使形参和实参同名,也是两个不同的变量,占用不同的内存单元。

七、局部变量和全局变量
分享到:
评论

相关推荐

    C语言第8课.pdf

    C语言第8课.pdf

    51 c语言运算符和表达式

    51 c语言运算符和表达式51 c语言运算符和表达式

    c语言实验课第八次实验第4题 二分查找法

    c程序设计 实验课 第八次实验第四题运用指针查找 二分法

    深度剖析C语言知识体系 原理+实践,一课带你吃透C语言

    第8章 聚合数据类型 第9章 字符串的应用 第10章 时间的应用 第11章 文件的输入输出 第12章 线程与并发 第13章 编译、链接和库 第14章 GUI 编程实践 第15章 综合案例:桌面跨平台高仿Mac版计算器 第16章 综合...

    C语言电子教案,内含课件+习题

    8 第八讲 数 组 9 第九讲 数 组 10 第十讲 函 数 11 第十一讲 函 数 12 第十二讲 函 数 13 第十三讲 函数、编译预处理 14 第十四讲 指 针 15 第十五讲 指 针 16 第十六讲 指 针 17 第十七...

    C语言初学者入门讲座 第八讲 转移语句

    本文给大家分享了C语言初学者入门讲座 第八讲 转移语句。

    黄老师入门级C语言视频教程带你零基础学C语言 视频.txt

    这是一套C研发工程师级别的教程,亦或是C语言初学者进阶性的教程.其阐述了许多C语言中本质的问题,更涵盖 C语言工程师在面试、学习、开发过程中遇到的诸多问题,是想成为一名真正C...8.第八课_转.flv 9.第九课_转.flv

    王敬华C语言第二版

    王敬华C语言程序设计教程2,3,4,5,6,7,8,9,11,12章课本源代码。不全呦。

    单片机C语言编程学习入门教程30课PDF(包括实验例程原理图和效果图内容超详细)

    第8课,定时器中断跑马灯 第9课,自动变速的跑马灯试验 第10课,4个按键4级变速的跑马灯试验,多任务的工作方式 第11课,一个按键控制的10级变速跑马灯试验 第12 课,可编程自动控制控制跑马灯 第13课,用外中断方式...

    c语言程序设计基础课件_东北大学

    《高级语言程序设计》是由东北大学计算中心基础教研室承担,面向全校所有非电本科专业开设一门计算机公共基础课。...8 第八章 指针 9 第九章 结构体、共用体与枚举类型 10 第十章 预编译和宏定义 11 第十一章 文件

    数据结构教程C语言版

    word版本的数据结构教程 第一课:数据结构的基本概念和术语 ... 第八课:线性表的链式表示与实现  第九课:循环链表与双向链表  第十课:栈的表示与实现  第十一课:栈的应用  第十二课:实验二 循环链表实验

    C语言图书借阅管理系统课程设计报告.doc

    二、进度安排 第 十八 周 星期1 8时00分——11时30分 星期2 14时00分——18时15分 星期3 8时00分——11时30分 星期4 8时00分——11时30分 第 十九 周 星期1 8时00分——11时30分 星期2 14时00分——18时15分 三、...

    上海电机学院C语言实训答案

    C语言程序设计是本科工科类各专业的重要基础课,主要学习程序设计的基本概念和方法,通过本门课程学习,使学生掌握C语言的基本原理,熟练掌握程序设计的基础知识、基本概念;掌握程序设计的思想和编程技巧。 实训是...

    C语言程序设计标准教程

    第八行中以四种格式输出实型量b的值。其中“%f”和“%lf ”格式的输出相同,说明“l”符对“f”类型无影响。“%5.4lf”指定输出宽度为5,精度为4,由于实际长度超过5故应该按实际位数输出,小数位数超过4位部分被截...

    考勤系统C语言实现(完整源码+详细说明)

    6) 录入学生的缺课记录; 7) 修改某个学生的缺课记录; 8) 查询某个学生的缺课情况; 9) 统计某段时间内,旷课学生姓名及...缺课日期、第几节课、课程名称、学生姓名、学生学号、缺课类型(迟到、早退、请假及 旷课)

    c语言学生成绩管理系统课程设计报告.doc

    六、设计安排 本课程设计的指导时间为第17周周一至周五和第18周周一至周五,每个班每天8节课。第 18周周五对系统进行检查和验收,次周一提交相关材料。 本课题可由5- 6人组成的课题小组协作完成。组员间应对设计、...

    c语言编写单片机技巧

    一般从大三会开始接触到一些专业课程,电子相关专业会开设相关的单片机应用课程并且会有简单的实验项目,那么要充分把握实验课的机会,多多地实际上机操作练习。平时可以多看看相关的电子技术杂志网站,看看别人的...

    C语言课程设计职工信息管理系统.docx

    课 程 设 计 报 告 课程名称 C语言程序设计 课题名称 职工信息管理系统 专 业 通信工程 班 级 1402班 学 号 姓 名 熊舒炼 指导教师 罗雅博 2015年 7月 3 日 C语言课程设计职工信息管理系统全文共35页,当前为第2页...

    tcl实例入门教程(包括常用的socket多线程xml解析数据库操作大量实例)

    2.8 第8课:数值比较-IF应用 10 2.9 第9课:WHILE 循环 11 2.10 第10课:FOR循环和INCR 11 2.11 第11课:过程PROC 12 2.12 第12课:过程PROC的参数定义 13 2.13 第13课:变量的作用域 13 2.14 第14课:LIST结构 14 ...

Global site tag (gtag.js) - Google Analytics