Во-первых, утверждение ar[NROW][NCOL]= (rand()%101);
неверно, поскольку каждый раз, когда вы присваиваете данные тем же ar[NROW][NCOL]
и NROW
& NCOL
, не меняется.
Так замените его как ar[i][j]= (rand()%101);
Во-вторых, чтобы напечатать элементы массива, напечатайте вот так
for (i=0;i<NROW;i++){ /* don't use < 5 or < 7 if you have NROW & NCOL*/
for(j=0;j<NCOL;j++){
ar[i][j]= (rand()%101);
}
}
Наконец, в операторе ar[i][j]= (rand()%101);
rand()
генерируется то же случайное число, если вы не изменили начальное значение. Прочитайте страницу руководства rand()
и srand()
. например, используйте srand(getpid())
перед вызовом rand()
.
srand(getpid());/*getpid() returns process id and
every time process manager generates different process id*/
См. Это http://man7.org/linux/man-pages/man3/rand.3.html и https://linux.die.net/man/3/srand