谁能帮我标注一下这段程序和时间复杂度吗?

/*
请按照注释实现数组处理功能,并计算时间复杂度,同时学习此例程中的文件读写方法。 2020年9月程鸿亮
*/
#define pmatrixIn(i,j) (pmatrixIn+5i+j)
#define pmatrixOut(i,j) (pmatrixOut+5i+j)
#define N 5
#include <stdio.h>
#include <stdlib.h>

void matrixProcess(double* pmatrixIn, double* pmatrixOut, int nOrder)
{
/* 直接复制方阵
for (int i = 0; i < 5; i++)
for (int j = 0; j < 5; j++)
pmatrixOut(i, j) = pmatrixIn(i, j);
//*/

//* 方阵的转置

for (int i = 0; i < 5; i++)
for (int j = 0; j < 5; j++)
pmatrixOut(i, j) = pmatrixIn(j, i);
//*/

/* 方阵的平方

double sum;
for (int i = 0; i < 5; i++)
for (int j = 0; j < 5; j++)
for (int k = 0; k < 5; k++)
{
if (k == 0)
sum = 0;
sum += pmatrixIn(i, k) * pmatrixIn(k, j);
pmatrixOut(i, j) = sum;
}
//*/
}

int main(){
double matrixCHD[N][N] = { 0 };
double matrixProcessCHD[N][N] = { 0 };

FILE* pf = NULL;
if ((pf = fopen("matrixCHD.txt", "r")) == NULL){
    printf("读取matrixCHD.txt失败...\n");
    return errno;
}

for (int i = 0; !feof(pf);i++)
    fscanf(pf, "%lf", *matrixCHD + i);

fclose(pf);
printf("读取matrixCHD.txt并打印matrixCHD矩阵...\n");
for (int i = 0; i < N; i++){
    for (int j = 0; j < N; j++)
        printf("%.2lf\t", matrixCHD[i][j]);
    printf("\n");
}

matrixProcess(matrixCHD, matrixProcessCHD, N);

printf("\n打印矩阵处理结果...\n");
for (int i = 0; i < N; i++){
    for (int j = 0; j < N; j++)
        printf("%.2lf\t", matrixProcessCHD[i][j]);
    printf("\n");
}

if ((pf = fopen("matrixProcessCHD.txt", "w")) == NULL){
    printf("读取matrixProcessCHD.txt失败...\n");
    return errno;
}
for (int i = 0; i < N*N; i++){
    fprintf(pf, "%.2lf\t", *(*matrixProcessCHD + i));
    if (i%N == N - 1)fprintf(pf, "\n");
}

fclose(pf);
printf("\n矩阵处理结果已保存到matrixProcessCHD.txt文件,请查看结果\n");


return 0;

}