1 / 32
文档名称:

c语言chapter05-2函数.ppt

格式:ppt   大小:508KB   页数:32页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

c语言chapter05-2函数.ppt

上传人:mh900965 2018/1/21 文件大小:508 KB

下载得到文件列表

c语言chapter05-2函数.ppt

相关文档

文档介绍

文档介绍:第5章函数-2
C语言程序设计
1
内容提要
函数定义、函数调用、函数原型、函数返回值
难点:函数的参数传递与返回值
程序调试
代码风格
变量的作用域与存储类型
模块化程序设计
Skill:
用函数编程求解问题的能力
程序排错与调试的能力
程序版式
缩进(indent)—保证代码整洁、层次清晰的主要手段
良好风格的程序应严格采用梯形层次对应好各层次
int IsPrime(int n)
{
int k, i;
k = sqrt((double)n);

for (i=2; i<=k; i++)
{
if (n % i == 0)
return 0;
}
return 1;
}
#include <>
main()
{
int i;
for (i=2; i<100; i++)
{
if (IsPrime(i))
printf("%d\t",i);
}
}
程序版式
现在的许多开发环境、编辑软件都支持“自动缩进”
根据用户代码的输入,智能判断应该缩进还是反缩进,替用户完成调整缩进的工作
VC中有自动整理格式功能
只要选取需要的代码,按ALT+F8就能自动整理成微软的cpp文件格式
命名规则
在Linux/Unix平台<br****惯用function_name
本书采用Windows风格函数名命名
用大写字母开头、大小写混排的单词组合而成
FunctionName
变量名形式
“名词”或者“形容词+名词”
如oldValue与newValue等
函数名形式
“动词”或者“动词+名词”(动宾词组)
如GetMax()等
对函数接口进行注释说明
/* 函数功能:实现&#215;&#215;&#215;&#215;功能
函数参数:参数1,表示&#215;&#215;&#215;&#215;&#215;
参数2,表示&#215;&#215;&#215;&#215;&#215;
函数返回值: &#215;&#215;&#215;&#215;&#215;
*/
返回值类型函数名(参数表)
{ 函数体 return 表达式;
}
变量的作用域( Scope )
指在源程序中定义变量的位置及其能被读写访问的范围
分为
局部变量(Local Variable)
全局变量(Global Variable )
局部变量( Local Variable )
在语句块内定义的变量
形参也是局部变量
特点
定义时不会自动初始化,除非程序员指定初值
生存期是该语句块
并列语句块各自定义的同名变量互不干扰
形参和实参可以同名
全局变量( Global Variable )
在所有函数之外定义的变量
Global variables are defined outside the body of every function in the file (lifetime of the main program):
生存期是整个程序,从程序运行起即占据内存,程序运行过程中可随时访问,程序退出时释放内存
有效范围是:从定义变量的位置开始到本程序结束

#include &lt;&gt;
int global; /*定义全局变量*/
void GlobalPlusPlus(void);
main()
{
global = 1;
printf(&quot;Before GlobalPlusPlus(), it is %d\n&quot;, global);
GlobalPlusPlus();
printf(&quot;After GlobalPlusPlus(), it is %d\n&quot;, global);
}
/* 函数功能: 对全局变量global加1,并打印加1之前与之后的值
函数入口参数: 无
函数返回值: 无
*/
void GlobalPlusPlus(void)
{
printf(&quot;Before ++, it is %d\n&quot;, global);
global++;
printf(&quot;After ++, it is %d\n&quot;, global);
}
Before GlobalPlusPlus(), it is 1
Before ++, it is 1
After ++, it is 2
After GlobalPlusPlus(), it is 2
全局变量
使函数之间的数据交换更容易,也更高效,但是并不推荐使用,尽量少用,因为谁都可以改写全局变量,所以很难确定是谁改写了它