#include <stdio.h>

int average1(int m[][3])
/* int average1(int *(m[3]), int n) 과 동일 */
{
  int i, j;
  int sum = 0;
  for(i = 0; i < 3; i++ )
    for(j = 0; j < 3; j++ )
      sum += m[i][j];
   
    return sum / (3*3);
}

int average2(int *m, int n1, int n2)
{
  int i, j;
  int sum = 0;
  for( i = 0; i < n1; i++ )
    for( j = 0; j < n2; j++ )
      sum += *(m + (i*n2 +j));
   
    return sum / (n1*n2);;
}

void main()
{
  int array[3][3] = {
    {1, 2, 3},
    {4, 5, 6},
    {7, 8, 9} };
    int average = 0;
   
    average = average1(array);
    printf("average1 = %d\n", average);
   
    average = average2(&array[0][0], 3, 3);
    printf("average2 = %d\n", average);
   
}
 
2006/05/13 22:43 2006/05/13 22:43

덧글을 달아 주세요