C++语言程序设计 清华大学郑莉 数组作为丞数参数 数● 数组元素作实参,与单个变量一样。 数组名作参数,形、实参数都应是数 组 组名,类型要一样,传送的是数组首 地址。对形参数组的改变会直接影响 到实参数组。 16
C++语言程序设计 清华大学 郑莉 16 数组作为函数参数 ⚫ 数组元素作实参,与单个变量一样。 ⚫ 数组名作参数,形、实参数都应是数 组名,类型要一样,传送的是数组首 地址。对形参数组的改变会直接影响 到实参数组。 数 组
C++语言程序设计 清华大学郑莉 例6-2使用数组名作为函数参数 数 主函数中初始化一个矩阵并将每个元 素都输出,然后调用子函数,分别计 组 算每一行的元素之和,将和直接存放 在每行的第一个元素中,返回主函数 之后输出各行元素的和。 17
C++语言程序设计 清华大学 郑莉 17 例6-2 使用数组名作为函数参数 ⚫ 主函数中初始化一个矩阵并将每个元 素都输出,然后调用子函数,分别计 算每一行的元素之和,将和直接存放 在每行的第一个元素中,返回主函数 之后输出各行元素的和。 数 组
#include <iostream> using namespace std; void RowSum(int A[][4],int nrow) int sum; for (int i=0;i<nrow;i++) { sum 0; for(int j=0;j<4;j++) sum +A[i][j]; cout<<"Sum of上ow"<<i <<is sum <endl A[i][O]=sum; 18
#include <iostream> using namespace std; void RowSum(int A[][4], int nrow) { int sum; for (int i = 0; i < nrow; i++) { sum = 0; for(int j = 0; j < 4; j++) sum += A[i][j]; cout << "Sum of row " << i << " is " << sum << endl; A[i][0]=sum; } } 18
void main (void) int Table[3][4] {{1,2,3,4],{2,3,4,5},{3,4,5,6}}; for (int i=0;i<3;i++) for (int j=0;j<4;j++) cout <Table[i][j]<< cout <endl; RowSum (Table,3); for (int i=0;i<3;i++) cout <Table[i][O] 19
void main(void) { int Table[3][4] = {{1,2,3,4},{2,3,4,5},{3,4,5,6}}; for (int i = 0; i < 3; i++) { for (int j = 0; j < 4; j++) cout << Table[i][j] << " "; cout << endl; } RowSum(Table,3); for (int i = 0; i < 3; i++) cout << Table[i][0] } 19
运行结果: 1 2 3 4 2 3 4 5 3 4 5 6 Sum of row 0 is 10 Sum of row 1 is 14 Sum of row 2 is 18 101418 20
运行结果: 1 2 3 4 2 3 4 5 3 4 5 6 Sum of row 0 is 10 Sum of row 1 is 14 Sum of row 2 is 18 10 14 18 20