《C语言程序设计·中国水利水电版》AB第4章:函数-44页PPT精品文档

合集下载

C语言程序设计基础讲解PPT第4章(第一讲)

C语言程序设计基础讲解PPT第4章(第一讲)

2019/1/8
【例4.5】选择法排序(续)
for (i=0; i<N; i++) 输入a[i] for (j=0; j<N-1; j++) for (i=j+1; i<N; i++) a[j]>a[i] T F a[j]与a[i]交换 输出a[0]~a[N-1] 图4.3 选择法排序
19
2019/1/8
#define N 5 main( ) { int a[N]; 程序运行情况如下: int i,j,t; 96 78 65 86 40 for (i=0; i<N; i++) The sorted numbers: scanf("%d",&a[i]); 40 65 78 86 96 printf("\n"); for (j=0; j<N-1; j++) /*确定基准位置 */ for(i=j+1; i<N; i++) if (a[j]>a[i]) { t=a[j];a[j]=a[i];a[i]=t; } printf("The sorted numbers: \n"); … }
20
2019/1/8
1
程序设计基础 I
第4章
数 组
青海大学 计算机系
第4章 数组
本章重点介绍 : 4.1 一维数组 4.2 二维数组 4.3 字符数组与字符串
2
2019/1/8
第4章 数组

3
一个人N门课的成绩怎样存储和处理? 一个班N门课的成绩怎样存储和处理?...... 这些数据的特点:具有相同的数据类型。 为了方便地使用这些数据,C语言提供了一 种构造数据类型:数组。 例如:存储学生成绩用实型数组 score[5] 其中:score是数组名。该数组可以存放5个成绩, 分别用下标变量表示: score[0],score[1],…score[4]。 下标变量也称为数组元素。

《C语言函数》PPT课件

《C语言函数》PPT课件

#include <stdio.h>
int sum(int a, int b)
{
a=a+b;
b=a+b;
函数被调用之前,形参和子函数中的变量
return(a);
不占内存,调用结束返回,形参所占的内存被收回.
}
实参和形参传递的是”值传递”,
void main() {
即单向传递, 只与参数相对位置有关,而与 变量名无关
void printMessage() {
printf(“Hello, world.\n”); printStar(); }
void main() {
printStar(); printMessage(); }
-
12
C语言程序设计
第 6 章 模块化程序设计--函数
函数的调用
一、函数调用一般形式
一般形式: 函数名(实参列表)
3.实参可以是常量、变量或表达式.
z=c(=x>( ya)>?bx) :?ya; :b;
因为传递过来的是具体数值.
retruertnu(rzn)(;c);
4.实参和形参类型必须一致(或可以安全转换).
} void main()
5.C语言中,实参和形参传递的是”按值传递”, {
即单向传递, 只与参数相对位置有关,而与
按生存期局部变量全局变量自动变量静态变量寄存器变量形式参数变量动态存储静态存储自动变量形式参数寄存器变量静态局部变量全局变量按变量的存放位置动态存储区静态存储区自动变量形式参数静态局部变量全局变量寄存器寄存器变量c语言程序设计模块化程序设计函数202137chenli33自定义的函数有两种
模块化程序设计

《C语言程序设计·中国水利水电版》AB第4章:函数共44页文档

《C语言程序设计·中国水利水电版》AB第4章:函数共44页文档
系统所提供的库函数都是完成一些通用功能的函数,在实际 的程序设计中,自己还需要编写大量完成特殊功能的函数,我们 称之为用户自定义函数。
4.1.1 函数的定义
函数定义的一般格式为:
函数类型 函数名( 形式参数表)
{
语句组
函数体
}
函数头
第4章 函数
例4.1 求两个整数中较大的值的函数
#include <iostream.h>
b = c;
cout << a << ", " << b <<", " << c << endl;
b = 20; cout << a << ", " << b <<", " << c << endl; }
编译过程会出错!
若函数不需要返回值,则应将类型指定为void。
第4章 函数
4.1 函数的定义与使用
4.1.1 函数的定义(续二)
2. 函数的参数 函数通过参数接收数据。 函数头中的参数为形式参数(或形参),在函数调用时给出 的参数称为实际参数(或实参)。 实参必须是一个实际的值,而形参只有在发生实际调用时才 有具体的值。 如果不需要为函数提供数据,则可以没有参数,称之为无参 函数。
int max(int x, int y);来自void main()
主调函数
{
int a,b,c;
cout << "请输入两个整数,用空格分隔:";
cin >> a >> b; c = max(a,b);

C语言程序设计项目式教程完整版课件全书电子教案教材课件完整

C语言程序设计项目式教程完整版课件全书电子教案教材课件完整

例如,有一函数
,编写程序,其功能是对已知 x 求 y
程序说明 ① if 和 else 后面的语句可以是复合语句。 ②注意 if 与 else 的配对原则,else 总是与前面离它最近的没成对的 if 成对。
简单的C语言程序结构
说明4——语句
C语言中以“;”作为语句结束的标志。函数体就是由若干语句组成的,同时语句也出现在 函数之间,示例代码如下所示:
简单的C语言程序结构
学习一种编程语言,最佳途径就是多阅读代码段,多编写程序代码,接下来通过最基本的 C语言程序的基本构成学习基本格式和书写规范,代码示例如下所示:
单一if结构
选择结构中最基本的分支结构是 if 语句,按形式分 if 语句可以分为单分支、双分支和多 分支等,单一 if 语句定义形式如下所示
当上述中“表达式”值为“逻辑真”时,执行“语句”中内容。例如计算整型变量 x 的 绝对值,示例代码如下所示:
If-else结构
if 语句的第二种形式为 if-else 结构的双分支。其定义形式如下所示 : 当“表达式”值为“逻辑真”时,执行“语句 1”;当“表达式”值为“逻辑假”时,执 行“语句 2”。例如,判断整型变量 x 是 5,则输出“right”,否则输出“error”,示例代码如 下所示:
简单的C语言程序结构
说明2——预处理
include称为文件包含命令,其意义是把双引号""或尖括号<>内指定的文件包含到本程序来, 成为本程序的一部分。被包含的文件通常是由系统提供的,其扩展名为.h的头文件。C语言的 头文件中包括了各个标准库函数的函数原型。因此,凡是在程序中调用一个库函数时,都必 须包含该函数原型所在的头文,示例代码如下所示:
原型在头文件 “stdio.h”中。具体格式如下:

《新编C语言程序设计教程》课件第4章

《新编C语言程序设计教程》课件第4章
为了满足将多条。
如if语句中的选择体和while语句中的循环体需多条语句描述 时,就必须采用复合语句。
复合语句只需用大括号“{ }”将一系列语句括起来即可。
复合语句不是一条具体语句,它是一种逻辑上的考虑,凡是 单一语句可以存在的位置,均可以使用复合语句。复合语句用 在语法上只能使用单一语句,而相应操作需由多条语句描述。 复合语句又称为分程序,它可以有属于自己的数据说明部分。
第 4章 顺序结构程序设计
4.1.3 特殊语句
1. 注释语句
格式为: /*注释文本*/ 注释语句虽然不对程序的运行产生任何影响, 但必要的 注释是程序的重要组成部分。 注释分功能性注释和说明性注释。 功能性注释用以注 释程序、 函数及语句块的功能, 说明性注释用以注释变量的 作用。
第 4章 顺序结构程序设计
(10) 在分析程序的输入数据时, 要同时考虑输入数据 的输入格式。
第 4章 顺序结构程序设计
4.3 数据输出
4.3.1 一般格式
printf(格式字串, 输出参数表) (1) 格式字串用以描述输出数据的格式, 由格式说明符 和普通字符组成。 与scanf( )函数中格式字串一样, 格式说 明符由“%”和格式字符组成, 不同的格式说明符对应不同 类型数据的输出, 普通字符原样输出。
第 4章 顺序结构程序设计
(2) 输出参数可以是表达式。如果是常量, 直接输出; 如是 变量, 输出其值; 如是表达式, 先计算表达式的值, 再输出。
(3) 输出函数的调用一般也采用语句调用形式, 间接形成C 语言的输出语句。 例如: int i=3, j=6; ① printf("i=%2d,j=%2d",i,j); 输出结果:i= 3,j= 6 ② printf("%2d*%2d=%2d",i,j,i*j);

C语言( 函数) ppt课件

C语言( 函数)  ppt课件
6 ppt课件
下面是若干函数定义的例子: void print()//无参函数,也没有返回值 {
printf("hello\n"); }
int max(int a, int b)//求两个整数的最大值 {
if (a>=b) return a; else return b; }
7 ppt课件
5.2.2 函数的声明 函数调用之前必须先进行函数声明,形式为:
printf("%d", a[i]);//数组元素作为函数实参
}
return 0;
p}pt课件
19
例5:有一个一维数组a,内放10个整数,分别输出这十 个数的平方。
#include<stdio.h> int square(int n) {
return n*n; } int main() {
int a[10], i, j; for(i=0;i<10;i++) scanf("%d",&a[i]); for(i=0;i<10;i++) printf("%5d",square(a[i])); return 0; }
//传递数组首地址 for(int j=0; j<10; j++) {
if (j>0) printf(" "); printf("%7.2lf",score[j]); } return 0; }
22 ppt课件
说明: (1)用数组名作函数参数,应该在主调函数和被调用函数
分别定义数组,例6中array是形参数组名,score是实 参数组名,在其所在函数中分别定义。 (2)实参数组与形参数组类型应一致(本例都为double 型),如不一致,将出错。 (3)由于将实参数组的首地址传给形参数组,因此, score[i]和array[i]代表的是同一单元。 (4)string类形的形参的改变不会影响实参,除非使用引 用参数。

c语言程序设计第4章PPT课件

c语言程序设计第4章PPT课件

do … while ( )
(循环语句)
2021/4/6
(3).其他控制语句 第4页/共50页
4
2、 说明性语句
C程序由函数组成。函数的格式:
函数名(参数表) { 说明部分;
数据类型说明语句
执行部分; }
可执行语句
• 对程序中使用的变量、数组、函数等操作对象 进行定义、声明的描述语句
• 只起说明作用,不产生可执行的机器指令代码。
赋值语句
注意:
函数调用语句
2021/4/6
1、赋值语句(a=3;)有赋值表达式(a=3)构成。
2、 分号是语句必不可少的一部分 3、 单独的一个分号“;” 构成一个空语句 例如: ; (空语句,是最简单的C语句)
6
第6页/共50页
4、空语句
只有一个分号的语句,叫空语
句。即它什么也不做。有时用
来作流程的转向点(流程从程
序其它地方转到此处语句),
也可以用来作为循环语句中的
循环体(循环体是空语句,表
2021/4/6
7
第7页/共50页
5、 复合语句 • 用一对花括号“{}”括起来的若干条语句
• 花括号中可以是说明语句、表达式语句、控制语句,也可以是复合语句 • 例如: ⑴ if (a>b) { max=a; min=b; } ⑵ for(n=1; n<10 ;n++)
2021/4/6
2
第2页/共50页
4.1 C语句概述 • 程序包括数据描述(由声明部分来实现)和数据操作(由语句来实现)。数据 描述包括定义数据结构和在需要时对数据赋予初值。数据操作的任务是对已提 供的数据进行加工。
• 主要内容:

第4章函数

第4章函数

源程序文件i
源程序文件n
预编译命令
函数1
函数n
说明部分
执行部分
C程序结构 C是函数式语言 必须有且只能有一个名为main的主函数 C程序的执行总是从main函数开始,在main中结束 函数不能嵌套定义,可以嵌套调用
4
C语言程序设计教程
函数分类
函数定义的角度上分
库函数 用户自定义函数
返回值情况来分
有返回值函数 无返回值函数
C语言程序设计教程
4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8
函数概述 函数的声明和定义 函数的参数和函数的返回值 函数的调用 局部变量和全局变量 变量的存储类型 外部函数和内部函数 综合应用
3
C语言程序设计教程
4.1 函数概述
C是模块化程序设计语言 是模块化程序设计语言
源程序文件1 C程序
开始
输入x和误差 输入 和误差e 和误差
x0=1
2 x0 − x >= e
0
非0
x0 = ( x0 + x / x0 ) / 2
输C语言程序设计教程
double abs_value(double y) #include<stdio.h> { #include<stdlib.h> if(y<0) double sqrt_root(double,double); y=-y; double abs_value(double); return y; int main() } { double x,e; scanf("%lf %lf",&x,&e); if(x<=0||e<=0) double sqrt_root(double x,double e) { { printf("输入数据错误!\n"); double x0=1; exit(0); while(abs_value(x0*x0-x)>=e) } x0=(x0+x/x0)/2; printf(“%lf:%lf\n",x,sqrt_root(x,e)); return x0; return 0; } }

课件

课件
《C语言程序设计》教学课件
运行时输入:A 输出 :A,65 a,97 课堂练习:读程序写出运行结果 main( ) {int x=-668,n1,n2,n3; char sign; sign=x>0?'+':'-'; x=x>0?x:-x; n1=x/100; x-=n1*100; n2=x/10; x-=n2*10; n3=x; printf("%c %d %d %d",sign,n1,n2,n3);}

《C语言程序设计》教学课件
例4.4字符数据的输出 main( ) {char c='a'; int i=97; printf("%c,%d\n",c,c); printf("%c,%d\n",i,i); } 运行结果:a,97 a,97

《C语言程序设计》教学课件
例4.5字符串的输出 main( ) {printf("%3s,%7.2s,%.4s,%-5.3s\n","CHINA", "CHINA","CHINA","CHINA");} 运行结果:CHINA,-----CH,CHIN,CHI-超 m=n -左 例4.6输出实数时的有效位数 main( ) {float x,y; x=111111.111;y=222222.222; printf("%f",x+y); } 运行结果:333333.328125 (7位精确)
数据输入输出的概念及在C语言中的实现
输入输出是以计算机主机为主体 2. C语言不提供输入输出语句 3. 在使用C语言库函数时,要用预编译命令 “#include”将有关的“头文件”包含到用 户源程序文件中

c语言程序设计水利水电

c语言程序设计水利水电

C语言程序设计水利水电概述水利水电工程是指利用水资源进行电力生产以及水利枢纽工程和渠道建设等水利工程。

C语言是一种通用的高级编程语言,具有简洁、高效、可移植等特点。

本文档将介绍如何运用C语言进行水利水电工程的程序设计,以实现相关功能。

目录1.水利水电工程简介2.C语言程序设计基础知识1.数据类型2.控制流程3.函数4.数组和指针5.结构体3.水文数据处理程序设计1.数据输入与输出2.数据处理与计算3.数据存储与读取4.水电站模拟程序设计1.水库水位与流量计算2.水电站发电量预测3.系统运行状态检测与控制5.水利工程可视化设计1.图形界面设计2.数据可视化展示3.用户交互与操作6.水利水电工程实例分析1.坝体稳定性分析2.溢洪道流量计算3.水电站效益评估7.总结与展望1.水利水电工程简介水利水电工程是人类利用水资源进行发电和水资源利用的重要项目。

包括水库、大坝、水电站、引水渠等建设和管理。

C语言程序设计作为一种强大的编程语言,可以应用于水利水电工程的自动化控制和数据处理等方面。

2. C语言程序设计基础知识在进行水利水电工程的程序设计之前,我们需要掌握一些C语言的基础知识。

这些知识包括数据类型、控制流程、函数、数组和指针以及结构体等。

2.1数据类型C语言中有多种数据类型,包括整型、浮点型、字符型等。

我们需要了解这些数据类型的用途、取值范围以及相应的格式符号。

2.2控制流程控制流程是程序执行的路线控制,包括顺序结构、选择结构和循环结构。

我们需要掌握如何使用i f语句、swi t ch语句和f or循环、wh il e 循环等进行流程控制。

2.3函数函数是C语言程序的基本组成单元,可以方便地对代码进行模块化设计。

我们需要学会如何定义函数、调用函数以及传递参数和返回值。

2.4数组和指针数组和指针是C语言中常用的数据结构,可以用于存储和操作一组相关的数据。

我们需要了解如何定义和使用数组以及指针的作用和使用方法。

《C语言程序设计·中国水利水电版》AB第4章:函数44页PPT

《C语言程序设计·中国水利水电版》AB第4章:函数44页PPT

第4章 函数
4.1 函数的定义与使用
4.1.2 函数的声明与调用
函数调用的一般格式: 函数名(实际参数表) 注意:若无形参,也不必给出实参,但括号不能省略。
实参与形参个数应一致,类型要一一对应。
函数原型声明:在调用函数前,对函数进行说明。通常用于 函数定义出现在函数调用之后的情况。
函数原型声明的一般格式: 函数类型 函数名(形式参数表); 注意:函数原型中可以不写出参数名。 如:double power(double, int);
第4章 函数
例4.8 用递归的方法1
n =1或 0
y=
n*(n-1)!
n>0
可以将求n!转化为求(n-1)!,再继续转化为求(n-2)!,到1时应停止递归
#include <iostream.h> long power(int n); void main() {
int n; long y; cout << "input a integer number:"; cin >> n; y=power(n); cout << n << "!=" << y << endl; }
for(i=1; i<=m; i++)
s *= i;
return s;
}
第4章 函数
例4.7 输入两个整数,求平方和
#include <iostream.h>
int fun2(int m);
int fun1(int x,int y);
void main(void)
{
int a,b;

C语言函数部分PPT课件

C语言函数部分PPT课件
auto int a int a
第33页/共66页
动态与静态存储变量
void f1()
{ int c;
c=4;
}
void main() { int a,b;
f1
4
a=b=3; f1();
main
3 3
}
第34页/共66页
动态与静态存储变量
二、静态存储变量 1、系统在程序运行期间为其分配固定存储 空间的变量。 2、全局变量是静态存储变量 3、static声明局部变量是静态存储变量
• 掌握C语言的参数传递方法
第22页/共66页
函数与变量的作用域
存在 时间
作用 范围
旅馆房间 家 房车
第23页/共66页
函数与变量的作用域
• 变量的作用域 • 变量的存储类别
第24页/共66页
局部变量和全局变量
一、变量的作用域 一个C程序由多个函数构成,每个函数内部为一个范围。
吉地林区
变量的分类: 局部变量 全局变量
函数概述
什么是函数?
函数是能够完成一定任务的、相对独立的程序段,可以被看作组成 一个程序的逻辑单元。
为什么使用函数?
(1)简化程序设计 (2)便于调试和维护
第1页/共66页
5.1 函数概述
函数的分类(从使用角度) ❖标准函数(库函数) 由系统提供的函数,用户不必自己定义,
可以直接调用。 用户自定义函数 根据函数所要完成的功能自己定义函数 的格式。
第5页/共66页
函数的定义
返回值的类型怎样确定? 返回值的类型应该与函数类型一致。
可以有多条return语句吗? 执行到哪一条return语句,哪一条起作用。 可以没有return语句(或return后的表达式为空)

清华《C语言程序设计》4函数ppt

清华《C语言程序设计》4函数ppt
(3)如果实参表列包括多个实参,对实参 求值的顺序并不是确定的,有的系统按自 左至右顺序求实参的值,有的系统则按自 右至左顺序。
2021/8/24
20
例 6.2 实参求值的顺序
#include <stdio.h>
void main()
{ int f(int a,int b); /* 函数声明 */
/*调用printstar函数*/
print_message(); /*调用print_message函数*/
printstar();
/*调用printstar函数*/
}
2021/8/24
8
void printstar() /*定义printstar函数*/ { printf("* * * * * * * * * * * * * * * *\n"); }
2021/8/24
22
对于函数调用 int i=2,p; p=f(i,++i);
如果按自左至右顺序求实 参的值,则函数调用相当 于f(2,3)
如果按自左至右顺序求实 参的值,则函数调用相当 于f(3,3)
2021/8/24
23
2、函数调用的方式
按函数在程序中出现的位置来分,可以有以 下三种函数调用方式:
y=temp;
(4)对于不带回值的} 函数,应当用“void”定义函数
为“无类型”(或称“空类型”)。此时在函数体中
不得出现return语句。
2021/8/24
30
说明:
1、对于无return 语句的函数,也会带回一个值,
只不过带回的是一个不确定的值。
例 函数带回不确定值
2、而在void类型的函数中不能出现return 表达式;
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

cin >> a >> b;
cout << "a、b的平方和:" << fun1(a,b) << endl;
}
int fun1(int x, int y)
{
return ( fun2(x) + fun2(y) );
} int fun2(int m) {
return ( m*m );
程序运行结果: 请输入两个整数:4 5 a、b的平方和:41
程序运行结果: 请输入n的值:5 153
long f1(int n)
// 求1!+2!+…+n!
{
int i;
long sum = 0;
for(i=1; i<=n; i++)
sum += f2(i);
return sum;
}
long f2(int m) // 求m!
{
int i;
long s = 1;
第4章 函数
例4.6 求1! + 2! + … n!
#include <iostream.h> long f1(int n); long f2(int m); void main() {
int n; long s; cout << "请输入n的值:"; cin >> n; s = f1(n); cout << s << endl; }
4.2.1 值传递
C++中参数的传递是单向的,即只能将实参的值传递给形参, 而形参值的改变对实参没有影响。
例4.3 写一个函数交换主函数中两个变量的值 考虑:使用值传递,将需要交换的变量作为实参传递给函数 的形参,在函数体中完成交换值的过程,这种做法能否实现程序 要求?
第4章 函数
例4.3 源程序
long power(int n) {
long f; if(n>1)
f=n*power(n-1); else
f=1; return f; }
第4章 函数
例4.8的递归过程分析
第4章 函数
例4.9 Hanoi塔问题
有三根针A、B、C,A针上有n个盘子,盘子大小不等,大的 在下,小的在上,如图所示。要求将这n个盘子从A针移到C针, 在移动过程中可以借助B针,每次只能移动一个盘子,并且在移 动过程中三根针上的盘子都保持大盘在下,小盘在上。
第4章 函数
例4.2 编写一个求x的n次方的函数
#include <iostream.h>
double power(double x, int n);
void main()
{
double x;
int n;
cout << "请输入X和N的值,用空格分隔:";
cin >> x >> n;
cout << x << "的" << n << "次方是:" << power(x,n) << endl;
第4章 函数
例4.4 引用的使用
#include <iostream.h>
void main()
{ int a=1;
定义引用b,并将其作为a的别名
int c=10; int &b = a;
将c的值赋给b,不是将b作为c的别名
cout << a << ", " << b <<", " << c << endl;
void swap(int &x, int &y) {
int temp; temp = x; x = y; y = temp; }
程序运行结果为: 20,10
第4章 函数
4.2 函数的参数传递
4.2.2 使用引用(续二)
例4.5程序运行过程中参数值的变化图示
a 10 x
a 20 b x 10
y
ba 20 y x 20
ba 20 y x 20
b 10 y
temp 10
temp 10
temp 10
注意:引用作参数时,函数的实参与形参在内存中共用存储单元,因此形参的 变化会使实参同时变化。
返回
第4章 函数
4.3 函数的嵌套调用
函数的嵌套调用是指,在执行被调用函数时,被调用函数又 调用了其它函数。
嵌套调用的执行过程:
第4章 函数
4.1 函数的定义与使用
4.1.2 函数的声明与调用
函数调用的一般格式: 函数名(实际参数表) 注意:若无形参,也不必给出实参,但括号不能省略。
实参与形参个数应一致,类型要一一对应。
函数原型声明:在调用函数前,对函数进行说明。通常用于 函数定义出现在函数调用之后的情况。
函数原型声明的一般格式: 函数类型 函数名(形式参数表); 注意:函数原型中可以不写出参数名。 如:double power(double, int);
int temp; temp = x; x = y; y = temp; }
程序运行结果为: 10,20
temp 10
temp 10
x 10 20 y x 10 20 y x 20 20 y x 20 10 y
注意:值传递时,函数的实参与形参在内存中占用不同的存储空间,值只能由 实参传递给形参,而形参的变化并不会影响实参。因此不能完成程序功能。
}
double power(double x, int n)
{
double a = 1.0;
程序运行结果为:
int i;
请输入X和N的值,用空格分隔:3.0 4
for(i=1; i<=n; i++) 3的4次方是:81
a *= x;
return a; }
返回
第4章 函数
4.2 函数的参数传递
根据函数的功能,函数的形参可以选择为数值、引用或指针 三种形式。
系统所提供的库函数都是完成一些通用功能的函数,在实际 的程序设计中,自己还需要编写大量完成特殊功能的函数,我们 称之为用户自定义函数。
4.1.1 函数的定义
函数定义的一般格式为:
函数类型 函数名( 形式参数表)
{
语句组
函数体
}
函数头
第4章 函数
例4.1 求两个整数中较大的值的函数
#include <iostream.h>
int n; cout << "请输入盘子数:"; cin >> n; cout << n << "个盘子的移动过程为:" << endl; Hanoi(n, 'A', 'B', 'C'); } //函数Move()将一个盘子从x针移到y针 void Move(char x, char y) { cout << x << "-->" << y << endl; }
for(i=1; i<=m; i++)
s *= i;
return s;
}
第4章 函数
例4.7 输入两个整数,求平方和
#include <iostream.h>
int fun2(int m);
int fun1(int x,int y);
void main(void)
{
int a,b;
cout << "请输入两个整数:";
第4章 函数
4.2 函数的参数传递4.2.2 使用引用1. Nhomakorabea引用的概念
引用是一种特殊的变量,可以认为是一个变量的别名。 定义引用的一般格式:
类型说明符 &引用名 = 变量名; 如: int a = 1;
int &b = a; 首先定义变量a,并初始化为1,然后定义引用b,并初始化为a, 即b是a的别名,因此a和b是同一个单元。 注意:定义引用时一定要初始化,指明该引用变量是谁的别名。
函数的返回值由函数体中的return语句给出。
return语句的一般格式为:
return (表达式); 执行该语句时,不带回返回
或 return 表达式;
值,只是返回主调函数
或 return ;
函数的类型要与return语句的返回值类型相同。若不一致则以 函数类型为准,将返回值类型转换为函数类型,若不能转换,则
被调函数
{
int m;
if(x>y) m=x;
else m=y; return m; }
程序运行结果为:
请输入两个整数,用空格分隔:20 30 a,b中较大的数是:30
第4章 函数
4.1 函数的定义与使用
4.1.1 函数的定义(续一)
1. 函数类型与返回值
函数的类型就是函数返回值的类型,可以是C++中的任何数据 类型。
编译过程会出错!
若函数不需要返回值,则应将类型指定为void。
第4章 函数
4.1 函数的定义与使用
4.1.1 函数的定义(续二)
2. 函数的参数 函数通过参数接收数据。 函数头中的参数为形式参数(或形参),在函数调用时给出 的参数称为实际参数(或实参)。 实参必须是一个实际的值,而形参只有在发生实际调用时才 有具体的值。 如果不需要为函数提供数据,则可以没有参数,称之为无参 函数。
相关文档
最新文档