- 1、本文档共313页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
程序运行结果如下:
Inputarraya:1357986420↙
Inputarrayb:5389-1-35604↙
a[i]b[i]4times
a[i]=b[i]1times
a[i]b[i]5times
Arrayaissmallerthenarrayb2.数组名作为函数的形参和实参
可以用数组名作为函数参数,此时实参与形参都应当用数组名。
【例2.23】有一个一维数组score,内放10个学生成绩,求平均成绩。
程序如下:
floataverage(floatarray[10])
{?inti;
floataver,sum=0;
for(i=0;i10;i++)sum=sum+array[i];
aver=sum/10;
return(aver);
}
#includestdio.h
voidmain()
{?floatscore[10],aver;
inti;
printf(Input10scores:);
for(i=0;i10;i++)
scanf(%f,score[i]);aver=average(score);
printf(Averagescoreis%6.2f\n,aver);
}
程序运行结果如下:
Input10scores:100567898.576879967.57597↙
Averagescoreis83.40说明:
(1)用数组名作函数参数,应该在主调函数和被调用函数中分别定义数组。如例2.23中array是形参数组名,score是实参数组名,分别在其所在函数中定义,不能只在一方定义。
(2)实参数组与形参数组类型应一致,如例2.23中都为float类型。如果类型不一致,结果将出错。
(3)实参数组和形参数组大小可以一致,也可以不一致。C编译系统对形参数组大小不做语法检查,只是将实参数组的首地址传递给形参数组。(4)形参数组也可以不指定大小,在定义形参数组时在数组名后面跟一对空的方括号。为了在被调用函数中处理数组元素的需要,可以另设一个参数传递数组元素的个数,如下例所示。
【例2.24】编写一个函数,求学生的平均成绩。
程序如下:
#includestdio.h
floataverage(floatarray[],intn)
{?inti;floataver,sum=0;
for(i=0;in;i++)
sum=sum+array[i];
aver=sum/n;
return(aver);
}
voidmain()
{?floatscore_1[5]={98.5,97,91.5,60,55};
floatscore_2[10]={67.5,89.5,99,69.5,77,89.5,76.5,54,60,99.5};printf(TheaverageofclassAis%6.2f\n,average(score_1,5));
printf(TheaverageofclassBis%6.2f\n,average(score_2,10));
}
程序运行结果如下:
TheaverageofclassAis80.40
TheaverageofclassBis78.20
从上例可以看出,两次调用average()函数时数组大小是不同的,在调用时用一个实参传递数组大小(传给形参n),以便在average()函数中对所有元素都访问到。(5)用数组名作函数实参时,不是把实参数组元素的值传递给形参数组元素,而是把实参数组的起始地址传递给形参数组,这样两个数组就共占同一段内存单元,如图2-24所示。假如例2.24中main()函数的实参数组score的起始地址为1000,调用average()函数时,将其起始地址1000传递给形参数组array,使得array的起始地址也成为1000。这样,score和array数组的起始地址相同,占同一段内存单元,score[0]与array[0]占同一个单元,score[1]与array[1]占同一个单元,依次类推。可以看出,形参数组
您可能关注的文档
最近下载
- 新版-FSM-100MP新版中文使用手册.pdf VIP
- DLT 5210.1-2021 电力建设施工质量验收规程全套表格必威体育精装版701至847页.docx VIP
- 基于虚拟现实的初中物理实验教学模式探索与实践教学研究课题报告.docx
- 人形机器人标准化白皮书(2024版).pdf VIP
- 急性肾衰竭的应急预案及护理流程.docx VIP
- 2023年山东省菏泽市成武县小升初数学模拟试卷及答案解析.docx VIP
- 《交通运输设备》课程思政元素.docx VIP
- 软件工程软件维护方案.pdf VIP
- 山东省菏泽市成武县2023年小升初数学真题试卷及答案word版.docx VIP
- 体检中心安全管理.pptx VIP
文档评论(0)