数组指针实践

实践如下:

#include <iostream>

using namespace std;

#define N 4

// 数组指针 又称行指针
void minValueInRow(int (*a)[N], int rowCount){
    int minValue,hold;
    for(int i = 0; i<rowCount; i++){
        //  该行的第一个元素的值,即*(*(a+i)+0)
        minValue = *(*(a+i));
        // 不用从0,从1开始,遍历该行的所有元素
        for(int j=1;j<N;j++){
            // 第i行j列的元素
            hold = *(*(a+i)+j);
            if(hold<minValue){
                minValue = hold;
            }
        }
        cout<<"line: "<<i<<"the min number is "<<minValue<<endl;
    }
}

int main(){

    cout << "向量中最小值实践:" << endl;

    int a[3][N];
    int (*p)[N];
    p = &a[0];

    cout<<"please input:"<<endl;
    for(int i = 0;i<3;i++){
        for(int j=0;j<N;j++){
            cin>>a[i][j];
        }
    }

    // 将第一行的行指针传入,并指明有几行
    minValueInRow(p,3);

    cout << "end." << endl;

    return 0;
}

输入:

原文地址:https://www.cnblogs.com/do-your-best/p/11144023.html