C语言程序设计案例教程第5章 使用函数-【中职专业课】同步教学课件
2022-09-22
|
15页
|
96人阅读
|
0人下载
普通
内容正文:
C语言程序设计案例教程第5章 使用函数
第 5章
使 用 函 数
C 语 言 源 程 序 是 由 函 数 构 成 的 , 一 个 C 语 言 程 序 至 少 包 含 一 个 主 函 数 ma i n( ) , 较 大 的 程
序 除 了 包 含 一 个 主 函 数 ma i n() 外 ,还 会 包 含 若 干 个 其 他 函 数 ,这 些 其 他 函 数 具 有 不 同 的 功 能 ,
例 如 , 前 面 介 绍 过 的 s ca n f ( ) 、 pri nt f( ) 和 s qr t() 等 C 语 言 系 统 提 供 的 库 函 数 , 也 可 以 由 用 户
根 据 实 际 的 需 求 自 行 编 写 函 数 。
5.1 函 数 的 定 义 与 调 用
5 . 1 . 1 什 么 是 函 数
1. 函 数 概 述
一个有用的程序往往需要编写数百行程序代码,甚至上万行的程序代码。在这样的程序
中,如果发生错误,程序员不得不一行一行的去寻找错误,其任务是非常繁重的。
两外,程序中的某些功能可能会反复多次使用,比如数据的查找、排序等。如果为每一
次应用都编写新的代码,会是程序过于庞大。而且,大部分情况下,程序的所有功能并不是
都需要同时使用,如果都调入内存,就加大了资源的负担。
考虑到以上的种种情况,在编写程序时,各种语言的程序均采用模块化和结构化,将一
个程序分割为一个个具有独立功能的模块,每一个模块都用来实现一个特定的功能,模块之
间可以互相调用。这样既可以增强程序的层次感,同时还便于阅读、开发和调试。一个较大
的程序可以实现多个程序员同时分别开发程序的不同模块,实现程序的并行开发,提高程序
设 计 的 效 率 。 图 5 1 1 所 示 是 一 种 C 语 言 程 序 的 层 次 结 构 图 。
图 5 1 1
C 语 言 程 序 的 层 次 结 构
和 其 他 语 言 一 样 , C 语 言 程 序 也 是 模 块 化 和 结 构 化 的 程 序 。 在 C 语 言 中 , 函 数 就 是 这 样
的程序模块,函数是构成程序的最基本单位,用函数来实现一个特定的功能,通过函数之间
的 互 相 调 用 , 来 实 现 函 数 之 间 的 数 据 访 问 。 可 以 说 C 语 言 是 函 数 式 语 言 。
一 个 C 语 言 程 序 必 须 有 且 只 有 一 个 主 函 数 m a i n() , 可 以 包 含 多 个 其 他 函 数 。 在 主 函 数 内
可以调用其他函数,各函数之间可以互相调用,但是函数不可以调用主函数。调用其它函数
的函数叫主调函数,被其它函数调用的函数叫被调函数。
下 面 通 过 一 个 简 单 的 程 序 来 进 一 步 了 解 函 数 。 程 序 如 下 。
2. 函 数 的 分 类
从用户使用角度来说,函数可以分为标准函数和自定义函数两类。分别简介如下。
( 1 ) 标 准 函 数 : 也 叫 库 函 数 , 它 是 C 语 言 系 统 自 带 的 已 经 编 写 好 的 , 可 以 实 现 一 个 特
111
定 功 能 的 函 数 ,例 如 前 面 介 绍 过 的 s ca n f () 、pr i nt f() 和 s qr t () 函 数 均 是 标 准 函 数 。 C 语 言 包 含
有 丰 富 的 标 准 函 数 , 可 参 看 附 录 3 。 .
要 使 用 某 一 个 标 准 函 数 , 需 要 使 用 i nc l ud e 命 令 声 明 该 函 数 所 在 的 头 文 件 。 例 如 ,
“ #i nc l ud e "s td io . h" ” 命 令 用 来 声 明 要 使 用 的 s ca nf ( ) 和 pr i nt f() 函 数 在 “ s td io .h ” 头 文
件 内 ; # i nc lu d e "m at h .h " ” 命 令 用 来 声 明 要 使 用 的 的 数 学 函 数 在 “ s td io .h ” 头 文 件 内 。 “
i nc l u de 是 命 令 , 不 是 语 句 , 其 后 边 不 可 以 添 加 分 号 “ ; ” 头 文 件 名 称 应 该 用 双 引 号 “ " ”。
或 “ <> ” 括 起 来 。 i nc l ud e 命 令 最 前 面 需 加 “ # ” 符 号 。
( 2) 自 定 义 函 数 : 这 种 函 数 需 要 用 户 在 程 序 内 编 写 相 应 的 程 序 。
另外,从函数的形式来看,函数还可以分为无参函数和有参函数两种。后边将介绍。
5.1.1 函 数 的
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。