6.2.2函数分类 从函数的返回值个数来看,函数分为以下两类: 无返回值函数 调用该函数,完成预先设计的功能后,迸不返回任何值的函 数。通常,无参函数都不返回值。 void outputCourseInfo( dcout < 课程号- 课程名---1 <<"-学分--总学时--周学时--学期-"<<end; 心有返回值函数 调用该函数,完成预先设计的功能后,有返回值的函数。 int maxInt(int x, int y) t if(x>y) return(X); else return y)i y
6 ❖无返回值函数 调用该函数,完成预先设计的功能后,并不返回任何值的函 数。通常,无参函数都不返回值。 6.2.2 函数分类 从函数的返回值个数来看,函数分为以下两类: ❖有返回值函数 调用该函数,完成预先设计的功能后,有返回值的函数。 int maxInt(int x, int y) { if(x > y) return(x); else return(y); } void outputCourseInfoTitle() {cout << " |----课程号----|------课程名------|" << "-学分-|-总学时-|-周学时-|-学期-|" << endl; }
6.2.2函数分类 从函数的来源看,函数分为以下两类: 系统库函数 由系统提供的,不需要用户编写可以直接使用的函数。 不同的C编译系统提供的库函数的数量和功能是不同的,但 有一些基本的函数是共同的,如 printf、sca。 用户自定义函数 只使用系统库函数无法完成需要的功能,由用户自已编写的 函数。 用户自定义函数根据结构化程序设计要求,对实际问题进行 模块分解后而产生,往往是在调用若干系统库函数的基础上 实现的。 void outputCourseInfoTitleO Scout < 课程号 课程名 <<"-学分--总学时-周学时-学期-"<<endl;
7 ❖系统库函数 由系统提供的,不需要用户编写可以直接使用的函数。 不同的C 编译系统提供的库函数的数量和功能是不同的,但 有一些基本的函数是共同的,如printf、scanf等。 6.2.2 函数分类 从函数的来源看,函数分为以下两类: ❖用户自定义函数 只使用系统库函数无法完成需要的功能,由用户自己编写的 函数。 用户自定义函数根据结构化程序设计要求,对实际问题进行 模块分解后而产生,往往是在调用若干系统库函数的基础上 实现的。 void outputCourseInfoTitle() {cout << " |----课程号----|------课程名------|" << "-学分-|-总学时-|-周学时-|-学期-|" << endl; }
6.3函数参数和返回值 函数参数 函数返回值
6.3 函数参数和返回值 ➢ 函数参数 ➢ 函数返回值
6.3.1函数参数 函数参数的作用在于在调用某个函数时由调用者向 该被调用函数传递信息。 函数参数有两类:形式参数和实际参数简称形参 和实参。 在C语言中,当发生函数调用时,由实参到形参的参 数传递方式常用的有两种调用方式:传值调用和传址 调用。此外,C+还实现了传引用这一种调用方式,综 合了传值调用和传址调用两者的优点
6.3.1 函数参数 • 函数参数的作用在于在调用某个函数时由调用者向 该被调用函数传递信息。 • 函数参数有两类:形式参数和实际参数,简称形参 和实参。 • 在C语言中,当发生函数调用时,由实参到形参的参 数传递方式常用的有两种调用方式:传值调用和传址 调用。此外,C++还实现了传引用这一种调用方式,综 合了传值调用和传址调用两者的优点
6.3.1传值调用 例6.1用户选择不同身份登录程序:61.cpp int nino char choice /打开登录菜单 crtt.退 系统登录 n"; n"; cout< t\ti\t 1 cuut(<"\t\tlt2.教 n 函数实参 cout< \t\tI -I \n\n cut<<"\t\t\请输入模块编号(0-2): cin>>choice,,g') 入选探 if(choice 元为零,则退出程序 return 函数形参 loginEXec(choice); /调用登求采甲 return 5 在传值调用中,调用函数时mn00ra 参数的传递过程是由实参变量 /登录菜单执行函数 “单向值传递”给对应的形参变 switch(moudle) 量,形参的变化是不能影响实参 cas oe 的。在此例中,只能由主函数的 return /退出程序 choice变量传递其值给被调用函 break; case 1 数的形参变量 module,在被调函 studentLogin() //调用学生登录函数 数中不管 module变量发生了什么 break e"2 变化,都不会再传递回 choice变 teacherLogin(); /调用教师登录函数 量, choice变量的值在整个函数 break 调用过程中不会发生任何变化
6.3.1 传值调用 例6.1 用户选择不同身份登录 程序:6_1.cpp 函数实参 函数形参 在传值调用中,调用函数时 参数的传递过程是由实参变量 “单向值传递”给对应的形参变 量,形参的变化是不能影响实参 的。在此例中,只能由主函数的 choice变量传递其值给被调用函 数的形参变量module,在被调函 数中不管module变量发生了什么 变化,都不会再传递回choice变 量,choice变量的值在整个函数 调用过程中不会发生任何变化