C语言改错题

#include <stdio.h>
#include <stdlib.h>
#define STUD 30
#define COURSE 5
void Total(int *pScore,int sum[],float aver[],int m,int n)
{
    int i,j;
    for(i=0;i<m;i++)
    {
        sum[i]=0;
        for(j=0;j<n;j++)
        {
            sum[i]=sum[i]+pScore[i*COURSE+j];
        }
        aver[i]=(float)sum[i]/n;
    }
}
void Print(int *pScore,int sum[],float aver[],int m,int n)
{
    int i,j;
    printf("Result: \n");
    for(i=0;i<m;i++)
    {
        for(j=0;j<n;j++)
        {
            printf("%4d \t",pScore[i*COURSE+j]);//
        }
        printf("%5d \+-t%6.1f \n",sum[i],aver[i]);
    }
}

score是第0行第0列的地址,可以看作列地址
score可以看作一个行地址
pScore是列指针:第i行第j列的元素:pScore[i
矩阵列数+j]
int p[N]表示行指针:第i行第j列的元素:(*(p+i)+j)


版权声明:本文为qq_43312665原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。