数组名做函数参数

指针变量跟数组名做函数参数一直以来捋不清,今天练习了一些,小有体会,备案

1.首先,数组元素作为函数的时候就相当于普通变量,只需要在调用函数的时候将数组元素复制一份传给形参

2.数组名作为函数参数实际上是将数组首元素的地址传给形参数组名,所以形参首元素与实参首元素的地址是一样的,他们共同一个占同一个存储单元。

所以在定义了子函数之后float average(float arr[]),

在调用的时候注意要传入数组名而不是数组元素---->a=average(score),而不是a=average(score[])

(arr[]这里相当于一个地址,也可以所以用指针变量表示float *arr)

ps:定义形参函数的时候不用声明数组的大小,在这里不起作用,编译系统不检查

例子:输入三个成绩,输出平均值


3.以上解决有确定长度数组的问题,以下解决没有确定长度的数组的问题

如何用一个函数求两个不同长度的数组的平均值问题

答:定义average函数时不必指定数组的长度,只需要在形参表上增加一个整型变量i,从主函数中将数组的实际长度分别从实参传给形参i,同时这个i用来在averarg函数中控制循环的次数。



阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/NINILI123456/article/details/52374068
个人分类: c
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

数组名做函数参数

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭