最新C语言函数调用及定义
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C语言函数调用及定义
主要内容
函数 无参无返回值函数 有参无返回值函数 有参有返回值函数 函数间数据传递
整数类型 整数变量的定义 整数的运算 整数的输入和输出 整数在函数间传递
用户自定义函数
P84~P95 第4章函数
2
4.2.1 函数定义
函数是指完成一个特定工作的独立程序模块。
库函数:由C语言系统提供定义。如scanf()等函数 自定义函数:用户根据需要定义。如cylinder()函数 P25 main()是一个主函数,C程序由一个main()或多个函数构成
程序中一旦调用了某个函数,该函数就会完成特定功 能,然后返回到调用它的地方。除主函数外一般函数 都不能单独运行。
printf(" ***\n");
printf("*****\n");
}
6
P4
无参无返回值的函数的声明 p87
一般形式:void 函数名(void ); void triangle (void) ;
主调函数 告诉编译系统用户自定义函数的存在 编译系统在检查被调函数时要知道调用信息包括:
函数名,参数,返回类型。 仅仅声明了“函数名”
一般形式
void 函数名(void) {
函数体 }
void triangle (void) { printf(" *\n");
printf(" ***\n"); printf("*****\n"); }
void 函数名() {
函数体 } 或
void triangle ()
{ printf(" *\n");
7
P4
无参无返回值的函数的调用
一般形式:函数名();
上例:triangle();
写一个主函数,调用 “triangle ”函数,打印 图形。
#include <stdio.h> void main(void) {
void triangle();/*函数声明*/ triangle(); }
void triangle () {
}
intersecting lines相交线
13
完成画基本组件的函数
/*Draws a base line*/ void draw_base(void) {
不能独立运行
4
写自己的函数--用户自定义函数
void triangle (void) { printf(" *\n");
printf(" ***\n"); printf("*****\n"); }
打印
无返回值函数void
函数的作用仅仅是执行 一系列的指令
5
1.无参无返回值函数定义 p87
P4
序执行。
triang束le执(); 行。
printf(" ***\n"); 分支或循环会改变顺序
}voidtri遇行an到被gle调调()用函函数数,} ,执pr转行int向完f("执被*****\n");
{
调函数后,返vo回id调m用ain函(void)
printf数(" 的*\n调");用处,{ 继续向下
printf(" *\n"); printf(" ***\n"); printf("*****\n"); }
8
例:sample01_04.c
/* a program to output a triangle*/
#include <stdio.h>
主 void triangle(void);
预处理
调 函
被 调 函
void triangle(void) { printf(" *\n");
printf(" ***\n");
数 printf("*****\n");
}
函数定义
可放在main函数之前,也可放在main 函数的后面。但不能放在main函数的函 数体中,函数和函数之间地位是平等的, 没有嵌套关系。只有嵌套调用。
main()
数 { printf("About to print a triangle\n");
triangle();
printf("That was it!\n");
}
函数声明(主函数前)p84(2)
告诉编译器,存在这样一个用 户自定义的函数,及它的调用 方法:名称、参数、返回值。
函数调用
调用自定义函数,() 中可不包括任何内 容,但()一定要写。
画一个圆 画一个横线 画一个平行线 画一个交叉线
完成画三角形的函数
画一个交叉线 画一个横线
在main函数中调用子 函数完成画小女孩
画一个圆 画三角形 画一个交叉线
12
完成画基本组件的函数
/*Draw a circle*/ void draw_circle(void) {
printf(" * \n"); printf(" * *\n"); printf(" * * \n"); }
Draw 绘画 Circle 圆
/*Draw intersecting lines*/ void draw_intersect(void) {
/* Use 2 \'s to print 1 \*/ printf(" / \\ \n"); printf(" / \\ \n"); printf(" / \\\n");
printf执(" 行***\。n");
triangle();
printf("*****\n"); }
函数的书写顺序
与执行顺序无关
函数定义若写在函数调 用之前,函数声明可省 略,但不主张。
}
10
完成画简图(女孩)的程序
打印图形
女孩 房子 男孩
百度文库11
sample01_03.c
完成画基本组件的函数
函数经过运算,得到一个明确结果,并需要回送该结果-- 一般有参有返回值函数。例,函数cylinder()返回圆柱的体积。
函数完成一系列操作步骤,不需要回送任何运算结果--无 返回值函数:
1.无参无返回值函数 2.有参无返回值函数
用户自定义函数
函数定义:编制独立功能的程序 函数声明:主调函数调用前声明 函数调用:主调函数调用被调用函数 函数执行:运行被调用函数 注:
9
执行流程
#voinidc程lumd序aein<的(svtod执iido)行.h>顺#v序oinidclutrdiaen<gsletd(i)o.h>程序的书写顺序
{ 从main函数开{ 始执行,
与执行顺序有关--顺
void tr执ian行gle完();main函p数rin即tf结(" *\n");
主要内容
函数 无参无返回值函数 有参无返回值函数 有参有返回值函数 函数间数据传递
整数类型 整数变量的定义 整数的运算 整数的输入和输出 整数在函数间传递
用户自定义函数
P84~P95 第4章函数
2
4.2.1 函数定义
函数是指完成一个特定工作的独立程序模块。
库函数:由C语言系统提供定义。如scanf()等函数 自定义函数:用户根据需要定义。如cylinder()函数 P25 main()是一个主函数,C程序由一个main()或多个函数构成
程序中一旦调用了某个函数,该函数就会完成特定功 能,然后返回到调用它的地方。除主函数外一般函数 都不能单独运行。
printf(" ***\n");
printf("*****\n");
}
6
P4
无参无返回值的函数的声明 p87
一般形式:void 函数名(void ); void triangle (void) ;
主调函数 告诉编译系统用户自定义函数的存在 编译系统在检查被调函数时要知道调用信息包括:
函数名,参数,返回类型。 仅仅声明了“函数名”
一般形式
void 函数名(void) {
函数体 }
void triangle (void) { printf(" *\n");
printf(" ***\n"); printf("*****\n"); }
void 函数名() {
函数体 } 或
void triangle ()
{ printf(" *\n");
7
P4
无参无返回值的函数的调用
一般形式:函数名();
上例:triangle();
写一个主函数,调用 “triangle ”函数,打印 图形。
#include <stdio.h> void main(void) {
void triangle();/*函数声明*/ triangle(); }
void triangle () {
}
intersecting lines相交线
13
完成画基本组件的函数
/*Draws a base line*/ void draw_base(void) {
不能独立运行
4
写自己的函数--用户自定义函数
void triangle (void) { printf(" *\n");
printf(" ***\n"); printf("*****\n"); }
打印
无返回值函数void
函数的作用仅仅是执行 一系列的指令
5
1.无参无返回值函数定义 p87
P4
序执行。
triang束le执(); 行。
printf(" ***\n"); 分支或循环会改变顺序
}voidtri遇行an到被gle调调()用函函数数,} ,执pr转行int向完f("执被*****\n");
{
调函数后,返vo回id调m用ain函(void)
printf数(" 的*\n调");用处,{ 继续向下
printf(" *\n"); printf(" ***\n"); printf("*****\n"); }
8
例:sample01_04.c
/* a program to output a triangle*/
#include <stdio.h>
主 void triangle(void);
预处理
调 函
被 调 函
void triangle(void) { printf(" *\n");
printf(" ***\n");
数 printf("*****\n");
}
函数定义
可放在main函数之前,也可放在main 函数的后面。但不能放在main函数的函 数体中,函数和函数之间地位是平等的, 没有嵌套关系。只有嵌套调用。
main()
数 { printf("About to print a triangle\n");
triangle();
printf("That was it!\n");
}
函数声明(主函数前)p84(2)
告诉编译器,存在这样一个用 户自定义的函数,及它的调用 方法:名称、参数、返回值。
函数调用
调用自定义函数,() 中可不包括任何内 容,但()一定要写。
画一个圆 画一个横线 画一个平行线 画一个交叉线
完成画三角形的函数
画一个交叉线 画一个横线
在main函数中调用子 函数完成画小女孩
画一个圆 画三角形 画一个交叉线
12
完成画基本组件的函数
/*Draw a circle*/ void draw_circle(void) {
printf(" * \n"); printf(" * *\n"); printf(" * * \n"); }
Draw 绘画 Circle 圆
/*Draw intersecting lines*/ void draw_intersect(void) {
/* Use 2 \'s to print 1 \*/ printf(" / \\ \n"); printf(" / \\ \n"); printf(" / \\\n");
printf执(" 行***\。n");
triangle();
printf("*****\n"); }
函数的书写顺序
与执行顺序无关
函数定义若写在函数调 用之前,函数声明可省 略,但不主张。
}
10
完成画简图(女孩)的程序
打印图形
女孩 房子 男孩
百度文库11
sample01_03.c
完成画基本组件的函数
函数经过运算,得到一个明确结果,并需要回送该结果-- 一般有参有返回值函数。例,函数cylinder()返回圆柱的体积。
函数完成一系列操作步骤,不需要回送任何运算结果--无 返回值函数:
1.无参无返回值函数 2.有参无返回值函数
用户自定义函数
函数定义:编制独立功能的程序 函数声明:主调函数调用前声明 函数调用:主调函数调用被调用函数 函数执行:运行被调用函数 注:
9
执行流程
#voinidc程lumd序aein<的(svtod执iido)行.h>顺#v序oinidclutrdiaen<gsletd(i)o.h>程序的书写顺序
{ 从main函数开{ 始执行,
与执行顺序有关--顺
void tr执ian行gle完();main函p数rin即tf结(" *\n");