第 7 章 用函数实现模块化程序设计7.1 为什么要用函数 7.2 怎样定义函数7.3 调用函数7.4 对被调用函数的声明和函数原型7.5 函数的嵌套调用 7.6 函数的递归调用7.7 数组作为函数参数 7.8 局部变量和全局变量7.9 变量的存储方式和生存期7.10 关于变量的声明和定义7.11 内部函数和外部函数7.1 为什么要用函数问题:假如程序的功能比较多,规模比较大,把所有代码都写在 main 函数中,就会使主函数变得庞杂、头绪不清,阅读和维护变得困难有时程序中要多次实现某一功能,就需要多次重复编写实现此功能的程序代码,这使程序冗长,不精炼7.1 为什么要用函数解决的方法:用模块化程序设计的思路采纳“组装”的办法简化程序设计的过程事先编好一批实现各种不同功能的函数把它们保存在函数库中,需要时直接用7.1 为什么要用函数解决的方法:用模块化程序设计的思路函数就是功能每一个函数用来实现一个特定的功能函数的名字应反映其代表的功能7.1 为什么要用函数在设计一个较大的程序时,往往把它分为若干个程序模块,每一个模块包括一个或多个函数,每个函数实现一个特定的功能C程序可由一个主函数和若干个其他函数构成主函数调用其他函数,其他函数也可以互相调用同一个函数可以被一个或多个函数调用任意多次7.1 为什么要用函数mainabcfghdeie7.1 为什么要用函数可以使用库函数可以使用自己编写的函数在程序设计中要善于利用函数,可以减少重复编写程序段的工作量,同时可以方便地实现模块化的程序设计7.1 为什么要用函数例 7.1 输出以下的结果,用函数调用实现。 ****************** How do you do! ******************7.1 为什么要用函数解题思路:在输出的文字上下分别有一行“*”号,显然不必重复写这段代码,用一个函数 print_star 来实现输出一行“*”号的功能。再写一个 print_message 函数来输出中间一行文字信息用主函数分别调用这两个函数#include int main(){ void print_star(); void print_message(); print_star(); print_message(); print_star(); return 0;}void print_star(){ printf(“******************\n”); }void print_message() { printf(“ How do you do!\n”); }输出 16 个*输出一行文字#include int main(){ void print_star(); void print_message(); print_star(); print_message(); print_star(); return 0;}void print_s...