C语言程序全书电子教案教学课件汇总.ppt

  1. 1、本文档共424页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* C语言程序设计 * main( ) { … y=ff(5) … } ff(5 ) { … f=ff(4)*5; … return 120; } ff( 4) { … f=ff(3)*4; … return 24; } ff(3 ) { … f=ff(2)*3; … return 6; } ff(2) { … f=ff(1)*2; … return 2; } ff(1) { … f=1; … return 1; } 回推 递推 * C语言程序设计 * 7.5 数组作为函数参数 7.5.1 数组元素作为函数参数 【例7-9】数组元素做函数调用的实参。 #include stdio.h main( ) { int a[10],b,j; for(j=0;j10;j++) scanf(%d,a[j]); b=0; for(j=0;j10;j++) b=max(b, a[j]); printf(%d,b); } max(int x,int y) { return(xy?x:y); } 数组元素作为函数的实参,必须在主调函数内定义数组,并使其获得初值,通过函数调用将数组元素的值传递给对应的形参。此时数据传递与变量作函数的实参一样,是单向传递,即“值传递”方式。 * C语言程序设计 * 7.5.2 数组名作为函数的形参和实参 【例7-10】 一维数组score内存放5个学生的成绩,求平均成绩。 float average(float arr[5]) { int j; float aver,sum=0; for (j=0;j5;j++) sum=sum+arr[j]; aver=sum/5; return(aver); } main( ) { float score[5],aver; int j; printf(input 5 scores:\n); for (j=0;j5;j++) scanf(%f,score[j]); printf(\n); aver=average(score); printf(average score is: %5.2f,aver); } 运行结果如下: input 5 scores: 64 66 77.8 85↙ average score is:76.16 (1)数组名作为函数参数,应该在主调函数和被调函数中分别定义数组,如例7-10中arr是形参数组,score是实参数组,分别在其所在函数中定义。 (2)实参数组与形参数组类型应当相同,如果不同,将会出错。 (3)实参数组与形参数组大小可以相同也可以不同,C编译器对形参数组大小不做检查,只是将实参数组的首地址传递给形参数组。 (4)形参数组也可不指定大小,或者在被调函数中另设一个参数,来传递数组的大小。 * C语言程序设计 * 【例7-11】数组名作函数参数 float average(float arr[],int n) { int j; float aver,sum=0; for (j=0;jn;j++) sum=sum+arr[j]; aver=sum/n; return(aver); } main( ) { float score1[5]={80,66,70.5,82,90}; float score2[6]={68,72,70.5,88,68,90}; printf(the average of the first class is %6.2f\n, average(score1,5)); printf(the average of the second class is %6.2f\n, average(score2,6)); } 运行结果如下: the average of the first class is 77.70 the average of the second class is 76.08 * C语言程序设计 * 【例7-12】数组名作函数实参 #include stdio.h fun(char str[]) { strcpy(str,ASP.NET); } main( ) { char a[10]=Turbo C; printf(%s\n,a); fun(a); printf(%s,a); } 运行结果为: Turbo C ASP.NET * C语言程序设计 * 【例7-13】求一个3×4的矩阵中所有元素中的最大值。 max_value(int array[][4]) { int i,j,k, max; max=array[0][0]; for(i=0;i3;i++)

文档评论(0)

BLUED + 关注
实名认证
内容提供者

教师资格证持证人

全网 内容最全课件 价格最低 质量最高 不是之一,是唯一。 每个人使用的办公软件版本不一样,如有个别显示不出的文件,建议使用最新版。

版权声明书
用户编号:8070063100000015
领域认证该用户于2023年03月20日上传了教师资格证

1亿VIP精品文档

相关文档