第6章++函数及其应用(正式2).docVIP

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章++函数及其应用(正式2).doc

第6章 函数及其应用 本章重点 函数的原型 函数的参数传递 系统函数的调用 函数的定义 函数的应用 函数的递归调用 6.1 函数的基本概念 函数原型: 函数返回值类型 函数名(形式参数列表); 函数定义形式: 函数返回值类型 函数名(形式参数声明) { 函数体; } 函数调用: 函数名(实参表) 例: 1.函数定义 int add(int x,int y) { int z; z=x+y; return z; } 2.函数原型 int add(int x,int y); 3.函数调用形式 y=add(a,b); 6.2. 函数的参数 函数参数传递可分为:数据复制方式和地址传送方式。 (1)数据复制方式传递数据 例6.1 函数值传递的例子。 编辑源程序代码6-1.c #includestdio.h int add(int x,int y) { int z; z=x+y; return z; } int main() { int a,b,c; scanf(%d %d,a,b); c=add(a,b); printf(c=%d\n,c); return 0; } (2)地址传送方式传递数据。 例6.2 函数地址传递的例子,在main函数中读入一个由数字字符组成的字符串,把数组名作为函数的参数,传给另一个函数,此函数把这数字字符转换为一个整型数。 图6.1 程序流程图 编辑源程序代码6-2.c #includestdio.h int ctoi(char str[]) { int sum=0,i=0; while(str[i]) { sum=sum*10+str[i]-‘0’; i++; } return sum; } int main( ) { char str[5]; int x; scanf(%s,str); x=ctoi(str); /* 数组名作为函数的参数 */ printf(x=%d\n,x); return 0; } 6.3 系统函数的应用 C语言提供了丰富的库函数。例如,调用数学库函数时,要求程序在调用数学库函数之前包含:#includemath.h命令。 6.2.1 数学函数 常用的数学函数有sqrt、pow、ln、exp、sin、fabs等。 例6.3 求z=xy + c的值,在C语言中xy可以通过调用pow函数来求得。 pow函数的函数原型为: double pow(double x,double y); 它表示pow函数有两个double型的形式参数x、y,调用后的返回值也为double型,在表达式调用中可表示为: z= pow(x,y)+c; 编辑源程序代码6-3.c #includestdio.h #includemath.h int main( ) { double x,y,z,c; printf(“please input x y c\n”); scanf(“%lf%lf%lf”,x,y,c); z=pow(x,y)+c; /* 表达式形式调用函数pow */ printf(z=%lf\n,z); return 0; } 6.2.2 字符串处理函数 常见的字符串处理函数有strcpy、strlen、strcat、strcmp等,他们分别用于字符串的拷贝、字符串长度的测试、字符串的连接与字符串比较,如表6.1所示。在使用这些函数时需包含函数库存string.h。 表6.1 常用的字符串处理函数 函数的原型 功能 返回值 注意 char *strcpy(char *sl,char *s2) s2的内容复制到sl所指存储空间中。 sl即目的串的首地址。 sl必须指向一个足够容纳s2串的存储空间 char *strcat(char *s1,char *s2) 将s2所指字符串的内容连接到s1的后面 sl的地址值 sl所指字符串应有足够的空间容纳两串合并后的内容 int strlen(char *s) 计算出以s为起始地址的字符串的长度 返回字符串s长度 长度不包括串尾的结束标志‘\0’ int strcmp(char *s1,char *s2) sl和s2中对应位置上的字符两两进行比较,两字符串的大小由出现第一对不相同的字符决定 返回两字符串ASCII码值的差值 从键盘输入两个字符串,把这两个字符串连接后输出在屏幕上。 分析:从键盘输入字符串用库函数gets,连接两个字符串应用strcat函数,此函数在string.h库中。 /

您可能关注的文档

文档评论(0)

dzzj200808 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档