欢迎来到天天文库
浏览记录
ID:51650762
大小:302.50 KB
页数:65页
时间:2020-03-27
《函数与模块化程序设计.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、课前思考1一个学校,有什么样的机构设置,从职能上有什么特点,学校的领导机关主要负责什么?各机构间是怎么样协调工作的?如果你是一个公司或企业的老板,需要处理哪些日常事务,对于这些事务你是全部自己处理,还是分配给别人处理?如果企业日益壮大,你是否需要设置相应的一些职务部门,想想要设置哪些部门,这些部门都干什么工作?在思考自己为什么要这门做?如果要你设计一个比较复杂的C语言程序,那么你在分析程序的功能需求时,你怎么去安排这些功能的实现模块,是全部放在main函数中呢,还是按功能设计成各自独立的模块,然后在main函数中按需求调用呢?课前思考4一个功能明确的函数模块(职能部
2、门)应改提供明确的服务,思考一下应该有什么样具体的接口(就像服务窗口所能提供服务和要求)?第六章函数与模块化程序设计本章主要内容函数的定义和调用变量的作用域与存储类型利用函数进行模块化程序设计6.1函数的定义和调用6.1.1概述模块与函数1.功能模块求解较小问题的算法和程序称作“功能模块”,各功能模块可以先单独设计,然后将求解所有子问题的模块组合成求解原问题的程序。“自顶向下”的模块化程序设计方法:将一个大问题分解成多个解决小问题的模块的设计思想。2.由功能模块组成程序的结构图:主控模块模块1_1模块1_n模块2_1模块2_n模块n_1模块n_n模块1模块2模块n3
3、.函数:完成相对独立功能的程序【例6-1】输入年月日,计算出该日为该年的第几天。主控模块判断闰年求某月的天数输出输入求总天数图6-2程序结构图程序实现:(1)判断闰年。intleap(intyear){intlp;lp=(year%4==0&&year%100!=0
4、
5、year%400==0)?1:0;returnlp;}(2)求某月的天数。intmonth_days(intyear,intmonth){intds,d;switch(month){case1:case3:case5:case7:case8:case10:case12:d=31;break;case2
6、:d=leap(year)?29:28;break;default:d=30;}returnd;}(3)求天数和。intdays(intyear,intmonth,intday){inti,ds=0;for(i=1;i7、_day=days(year,month,day);printf("%d-%d-%dis%dthdayoftheyear!",year,month,day,t_day);}注意:在完整的程序中,前三个函数应放在main()函数之前。用C语言设计程序就是编写函数。C程序至少并且必须有一个main()函数,执行时,从main()开始。C程序中可以有若干个其他函数,这些函数只有在执行main()函数的过程中被调用执行,调用可以是互相的。main(){…f1();…f2();…}f1(){…f11();}f2(){f21();f22();}f11(){…}f21(){…8、}f22(){…}函数是构成C程序的基本构件。C程序是一系列函数的集合,每个函数都具有相对独立的单一功能printf();输出函数fabs();求绝对值函数如:对五个字符串排序,由一个主函数main(),被调用函数printf(),scanf(),strcmp(),strcpy()构成的一个完整的C程序由主函数+被调函数来构成C语言中允许一个函数被多次调用,也允许函数调用自己本身(递归调用)函数库函数(内部函数)I/O,分类,转换,诊断,目标控制,图形,接口,进程控制,处理,数学,文本窗口,内存,时间,日期自定义函数从使用角度划分6.1.2函数的定义从用户使用的角度9、看,函数可以分成标准函数和用户自定义函数两大类。标准函数:C语言函数库中的函数;printf(),scanf(),strcpy(),strcmp()用户自定义函数:用户自己定义的函数。函数的定义从函数定义形式的角度看,函数又可以分成有参函数和无参函数两大类。[存储类型][函数返回值的数据类型]函数名([形式参数表及其说明]){内部变量说明语句;可执行语句;}abc(){inta,b,c,d;scanf(“%d%d”,&a,&b);c=a+b;d=a-b;…….return(c*d);}缺省为extern缺省为int缺省为不需要参数传递在C语言中,所有的函数定义,
7、_day=days(year,month,day);printf("%d-%d-%dis%dthdayoftheyear!",year,month,day,t_day);}注意:在完整的程序中,前三个函数应放在main()函数之前。用C语言设计程序就是编写函数。C程序至少并且必须有一个main()函数,执行时,从main()开始。C程序中可以有若干个其他函数,这些函数只有在执行main()函数的过程中被调用执行,调用可以是互相的。main(){…f1();…f2();…}f1(){…f11();}f2(){f21();f22();}f11(){…}f21(){…
8、}f22(){…}函数是构成C程序的基本构件。C程序是一系列函数的集合,每个函数都具有相对独立的单一功能printf();输出函数fabs();求绝对值函数如:对五个字符串排序,由一个主函数main(),被调用函数printf(),scanf(),strcmp(),strcpy()构成的一个完整的C程序由主函数+被调函数来构成C语言中允许一个函数被多次调用,也允许函数调用自己本身(递归调用)函数库函数(内部函数)I/O,分类,转换,诊断,目标控制,图形,接口,进程控制,处理,数学,文本窗口,内存,时间,日期自定义函数从使用角度划分6.1.2函数的定义从用户使用的角度
9、看,函数可以分成标准函数和用户自定义函数两大类。标准函数:C语言函数库中的函数;printf(),scanf(),strcpy(),strcmp()用户自定义函数:用户自己定义的函数。函数的定义从函数定义形式的角度看,函数又可以分成有参函数和无参函数两大类。[存储类型][函数返回值的数据类型]函数名([形式参数表及其说明]){内部变量说明语句;可执行语句;}abc(){inta,b,c,d;scanf(“%d%d”,&a,&b);c=a+b;d=a-b;…….return(c*d);}缺省为extern缺省为int缺省为不需要参数传递在C语言中,所有的函数定义,
此文档下载收益归作者所有