唐僧爱吃唐僧肉 2017-04-22 01:59 采纳率: 16.7%
浏览 2448

求大神帮帮忙,小妹感激不尽

按如下函数原型编程从键盘输入一个m行n列的二维数组,然后计算数组中元素的最大值及其所在的行列下标值。其中,m和n的值由用户键盘输入。已知m和n的值都不超过10。
void InputArray(int p, int m, int n);
int FindMax(int *p, int m, int n, int *pRow, int *pCol);
输入提示信息:
"Input m, n:"
"Input %d
%d array:\n"
输入格式:"%d,%d"
输出提示信息和格式:"max = %d, row = %d, col = %d\n"
#include
#define M 10
#define N 10
void InputMatrix(int p, int m, int n);
int FindMax(int *p, int m, int n, int *pRow, int *pCol);
int main()
{              
    int a[M][N], m, n, row, col, max;
    printf("Input m, n:");
    scanf("%d,%d", &m, &n);
    InputMatrix(*a, m, n);
    max = FindMax(*a, m, n, &row, &col);
    printf("max = %d, row = %d, col = %d\n", max, row, col);
    return 0;
}              
/
函数功能:输入m*n矩阵的值 /
void InputMatrix(int *p, int m, int n)
{              
    int i, j;
    printf("Input %d
%d array:\n", m, n);
    for (i = 0; i < m; i++)
    {              
        for (j = 0; j < n; j++)
        {              
            scanf("%d", &p[i * n + j]);
        }
    }
}              
/* 函数功能:在m*n矩阵中查找最大值及其所在的行列号 /
int FindMax(int *p, int m, int n, int *pRow, int *pCol)
{              
    int i, j, max = p[0];
    *pRow = 0;
    *pCol = 0;
    for (i = 0; i < m; i++)
    {              
        for (j = 0; j < n; j++)
        {              
            if (p[i * n + j] > max)
            {              
                max = p[i * n + j];
                *pRow = i;              /
记录行下标*/
                *pCol = j;              /*记录列下标*/
            }
        }
    }
    return max;
}              
那么这边小妹就看不懂了,在输入m*n矩阵的函数中在函数名中定义了一个指针变量p可以直接存储数组吗?指针不一般存储一个数的地址吗?可以存储一个数组的地址吗?
求大神赐教,小妹感激不尽

  • 写回答

3条回答 默认 最新

  • Jhone.Yu 2017-04-22 02:14
    关注

    想一下昂,既然都是数据,那在内存肯定要有空间存储这些数据,指针保存的是数据的地址,你觉得数组不占内存空间嘛~

    评论

报告相同问题?

悬赏问题

  • ¥15 手机连接电脑热点显示无ip分配
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大