Лаба по С
Смысл такой , я другу пишу лабу по С. Вот задание: . Дана вещественная квадратная матрица порядка 5. Получить новую матрицу путем прибавления к элементам каждой строки матрицы наименьшего значения элементов этой строки. Сформировать одномерный массив, содержащий количество четных элементов в четных столбцах полученной матрицы и количество нечетных элементов в нечетных столбцах. Прогу я вроде написал , она запускается, но не правильно ищет  чет нечет в чет нечет столбцах ( я их не в массив а вывожу на экран) Короче кто шарит хоть как то помогите найти ошибку.( надо завтра до 12 дня)))  
Прога
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
void main()
{
float MatriX1[5][5],MatriX2[5][5];
int i,j,q,w,e,r;
float s[5],c[10],n[15];
srand(time(0));
w=0;
r=0;
for(i=0;i<5;i++)
for(j=0;j<5;j++)
MatriX1[j]=(float)((rand()%300)/3.5);
 
s=MatriX1[0][0];
for(i=0;i<5;i++)
{
s=MatriX1[0];
 
for(j=0;j<5;j++)
{
if(s>MatriX1[j])
s=MatriX1[j];
printf("\t %3.2f",MatriX1[ i ][ j ]);
}
printf("\tmin=%3.2f",s[ i ]);
printf("\ n");
 
 
}
printf("\ n");
printf("\ n");
printf("\ n");
for(i=0;i<5;i++)
for(j=0;j<5;j++)
MatriX2[j]=MatriX1[j]+s;
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
printf("\t %3.2f",MatriX2[j]);
printf("\ n");
 
}
for(j=1;j<5;j=j+2)
{
for(i=0;i<5;i++)
{q=(int)MatriX2[j]%2;
if(q==0)
{c[w]=MatriX2[j];
w++;
}
}
}
printf("\ n");
printf("\ n");
printf("\ n");
for(i=0;i<w;i++)
printf("\t%3.2f ",c[ i ]);
printf("\ n");
printf("\ n");
printf("\ n");
for(j=0;j<5;j=j+2)
{
for(i=0;i<5;i++)
{e=(int)MatriX2[j]%2;
if(e!=0)
{n[r]=MatriX2[j];
r++;
}
}
}
printf("\ n");
printf("\ n");
printf("\ n");
for(i=0;i<r;i++)
printf("\t%3.2f",n[ i ]);
}