- 0
- 0
- 约1.86万字
- 约 102页
- 2026-01-15 发布于江西
- 举报
第6章函数与预处理;第6章函数与预处理;第6章函数与预处理;6.1函数应用实例;在第1章中已经介绍过,C源程序是由函数组成的。虽然在前面各章的程序中都只有一个主函数main(),但实用程序往往由多个函数组成。函数是C源程序的基本模块,通过对函数模块的调用实现特定的功能。C语言中的函数相当于其它高级语言的子程序。C语言不仅提供了极为丰富的库函数(如TurboC,MSC都提供了三百多个库函数),还允许用户建立自己定义的函数。用户可把自己的算法编成一个个相对独立的函数模块,然后用调用的方法来使用函数。
可以说C程序的全部工作都是由各式各样的函数完成的,所以也把C语言称为函数式语言。由于采用了函数模块式的结构,C语言易于实现结构化程序设计。使程序的层次结构清晰,便于程序的编写、阅读、调试。;编译、连接、运行程序。程序运行后,屏幕显示:
printstart()和menu()都是用户定义的函数,分别用来输出一行下划线和一个菜单信息。在定义这两个函数的函数时,前面加上void,表示该函数无类型,也就是函数没有返回值。而函数名后面的括号里面是空的,说明该函数没有参数。;【例6.2】函数调用的简单例子
/* 源文件名:Li6_2.c
功能:求两个整数的和
*/
#includestdio.h
voidmain()
{ intsum(intx,inty);/*对sum()函数进行声明*/
inta,b,s;
scanf(%d%d,a,b);
s=sum(a,b);/*对sum()函数进行调用*/
printf(thesumis%d\n,s);
}
intsum(intx,inty)/*对函数sum()进行定义*/
{ intz; /*函数体中的声明部分*/
z=x+y;
returnz;
};编译、连接、运行程序。程序运行后,屏幕显示:
程序中sum(intx,inty)函数带有两个整型参数x和y,表示sum是个有参函数,而在函数名前面加上int,表示该函数会返回一个整型的数值。;说明:
(1)C源程序是由函数组成的。函数是C源程序的基本模块,通过对函数模块的调用实现特定的功能。C语言中的函数相当于其它高级语言的子程序。C语言不仅提供了极为丰富的库函数,还允许用户建立自己定义的函数。用户可把自己的算法编成一个个相对独立的函数模块,然后用调用的方法来使用函数。可以说C程序的全部工作都是由各式各样的函数完成的,所以也把C语言称为函数式语言。
由于采用了函数模块式的结构,C语言易于实现结构化程序设计。使程序的层次结构清晰,便于程序的编写、阅读、调试。
(2)一个程序总是从main()函数开始执行,调用其他函数后,流程回到main主函数结束。main主函数是系统定义的,必须有且只能有一个名为main的主函数。
(3)所有函数都是平行的,它们的定义都是相互独立的。一个函数并不从属于另外一个函数,即函数不能嵌套定义。函数间可以互相调用,即函数可以嵌套调用。但不能调用main函数,main函数是系统调用的。;从函数使用的角度看,函数可分为库函数和用户定义函数两种。
(1)库函数:由编译系统提供的已设计好的函数,用户只需调用而无须实现它,在编译C程序时,应尽可能的使用库函数。这样可以提高编程效率和编程的质量。在前面各章的例题中反复用到的printf、scanf、getchar、putchar、gets、puts、strcat等函数均属于库函数。
使用库函数时应注意:
1) 函数的功能;
2) 函数参数的数目、顺序以及每个参数的意义和类型;
3) 函数返回值的意义和类型;
4) 需要使用的包含文件。??调用某个库函数,则需在程序的头部用包含命令(#include)将说明该函数原型的头文件包含进本程序中。;(2)用户定义函数:顾名思义,就是程序员自行定义和设计的函数。库函数一般只能提供一些低层服务的功能。而用户自定义的函数则能针对具体的应用实现一些特殊的功能。用自定义函数需要程序员自己来编写函数功能的实现代码。用户自定义函数是由用户按需要写的函数。对于用户自定义函数,不仅要在程序中定义函数本身,而且在主调函数模块中还必须对该被调函数进行类型说明,然后才能使用。;C语言的函数兼有其它语言中的函数和过程两种功能,从这个角度看,又可把函数分为有返回值函数和无返回值函数两种。
(1)有返回值函数:此类函数被调用执行完后将向调用者返回一个执行结果,称为函数返回值。如数学函数即属于此类函数。由用户定义的这种要返回函数值的函数,必须在函数定义和函数说明中明
您可能关注的文档
- 街边绿化施工安全技术交底.doc
- 高中政治单元整合(3)必修1课件.ppt
- 第七章--服装设计的程序-《服装设计基础》电子教案-教学.ppt
- 长岭防撞护栏施工安全技术交底.doc
- 肾性水肿笔记护理措施.doc
- 防污室内油漆施工安全技术交底.doc
- 整合性促销模式解决方案分析.ppt
- 腮腺感染采取的护理措施.doc
- 全科医疗中的用药(课件).ppt
- 第16章量子力学基础复习.ppt
- 安徽省华师联盟2025-2026学年高三上学期1月质量检测生物试卷+答案.doc
- 安徽省华师联盟2025-2026学年高三上学期1月质量检测语文试卷+答案.doc
- 四川省绵阳南山中学实验学校2025-2026学年高三上学期1月月考数学含答案.doc
- 2026届辽宁省大连市高三上学期双基考试物理试卷+答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测化学含答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测生物含答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测英语含答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测政治含答案.doc
- 黑龙江省龙江教育联盟2026年1月高三上学期期末考试化学含答案.doc
- 黑龙江省龙江教育联盟2026年1月高三上学期期末考试生物含答案.doc
最近下载
- 中国水产科学研究院2026年度第一批统一公开招聘备考题库及答案详解(夺冠系列).docx VIP
- 直播电商行业流量转化率优化方案研究报告.docx VIP
- 广东省光大联考2026届普通高中毕业班第二次调研考试化学(含答案).pdf VIP
- 公司收购股权转让法律尽职调查报告律师专业版.pdf
- 金阳投资集团招聘考试题.pdf VIP
- 《胰源性糖尿病诊断与治疗中国专家共识(2025版)》解读PPT课件.pptx VIP
- 有机化合物反应与转化图.PDF
- 山东省枣庄市滕州市2024-2025学年七年级上学期1月期末考试数学试卷(含答案).pdf VIP
- AIGC行业报告:AI生成内容深度产业报告.pdf VIP
- 浙江中医药大学2024-2025学年第1学期《宏观经济学》期末考试试卷(B卷)附标准答案.docx
原创力文档

文档评论(0)