Показать сообщение отдельно
Старый 12.10.2012, 07:39   #2 (permalink)
Fenix
404
 
Аватар для Fenix
 
Регистрация: 10.01.2010
Сообщений: 1,749
Записей в дневнике: 5
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 3868
По умолчанию

Ну во-первых
max=max; - вообще убило.
Компилятор Dev-Cpp
Код:
#include<conio.h>
#include<stdlib.h>
#include<stdio.h>
#define N 4
#define B 6

int main()
{
 int i,
     j,
     Array[N][B];
 int max; 

 //заполнение
 for (i=0;i<N;i++)
 {
  printf("\n ----------------------------------\n");
  for (j=0;j<B;j++)
  {
   Array[i][j]= -10+rand()%20;
   printf("%4d |", Array[i][j]);
  }
 }

 //нахождение максимальных
 printf("\n ----------------------------------\n");
 for (i=0;i<N;i++)
 {
  max=Array[i][0];
  for (j=0;j<6;j++)
  {
   if(Array[i][j]>max)
    max=Array[i][j];
  }
  printf("\nmax in %d-row: %d",i+1,max);
 }

 //первый положительный
 int pos=0;
 for(i=0;i<N;i++)
 {
  for(j=0;j<B;j++)
   if (Array[i][j]>0)
   {
    printf("\n1-st positive element: %d (%d-row; %d-col)",Array[i][j],i+1,j+1);
    pos=1;
    break;
   }
  if(pos==1) 
   break;
 }       

getch();
}
При желании поиск максимальных можно внести в цикл заполнения.
Для целочисленных не надо писать %3.1d, так как часть .1 - не имеет смысла.
Собственно, код рабочий, но "на скорую руку".
Fenix вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070