文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
5.4.4 二维数组作为函数参数
二维数组也可以作为参数来进行函数调用。在函数定义时,与一维数组作为函数参数时需要在参数名跟上一对中括号类似,二维数组作为函数参数时需要在参数名后面跟上两对中括号,其中第一对中括号用于表示第一维的大小,其值可以被省略,即使用空中括号形式;第二对中括号用于表示第二维的大小,其值不可被省略,即必须指明第二维的大小。
下面,我们就来定义一个函数 printScore,并将第一个形式参数 s 定义为二维数组类型,该函数的功能为打印形参 s 所对应的二维数组中的所有元素:
在 printScore 函数中的参数表中,还使用了第 2 个 int 类型的形式参数 len,它用于指定二维数组第一维的大小。这与“将一维数组作为函数参数时,需要用另一个参数来提供数组长度信息”的作用一样。由于第一个参数 s 只能提供二维数组的内存位置和第二维的大小,因此,需要第 2 个参数 len 来提供二维数组第一维的大小信息。
在函数内,我们依然使用双层的 for 循环语句来逐行逐列地访问二维数组中的元素,并通过 printf 函数,将每个数组元素以占用 6 个字符宽度、保留 2 位有效小数的形式打印输出到控制台窗口,每打印完一行数组元素后会通过“printf("\n")”进行一个换行的操作。
定义好 printScore 函数之后,就可以在主函数中调用该函数:
printScore(score, 3);
在函数调用语句中,将二维数组 score 作为第一个实参,并将整型常量值 3 作为第二个实参,用来指示二维数组的第一维大小为 3。
编译运行程序,打印结果如下:
88.50 86.50 95.00 87.00 68.00 70.00 98.50 92.50 75.50 69.50 96.50 84.00
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论