Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.10.2015, 12:13   #1
Иван_Black
Новичок
Джуниор
 
Регистрация: 04.10.2015
Сообщений: 2
По умолчанию

Найти два последних отрицательных элемента массива. Пока у меня работает программа для нахождения одного последнего элемента, а как найти второй? Подскажите источники, где доходчиво объясняются указатели, а то как-то не идет...
вот рабочая программа для 1 элемента.
Код:
#include <stdio.h>
#include <stdlib.h>
int main()
{
   int a[10],n,i,*p;
   p=NULL;
   printf ("enter n:\n");
   scanf ("%d",&n);
   printf ("appearance of the massive:\n");
   for (i=0;i<n;i++)
   scanf ("%d",&a[i]);
  for (i=(n-1);i>0;i--)
    if (a[i]<0)
    {
        p=a+i;break;
    }
    if (p==NULL)
        printf ("otr net\n");
    else printf ("otr:%d",*p);
    return 0;
}

Последний раз редактировалось Stilet; 04.10.2015 в 12:33.
Иван_Black вне форума Ответить с цитированием
Старый 04.10.2015, 12:35   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
#include <stdio.h>
#include <stdlib.h>
int main()
{
   int a[10],n,i,p=-1;
   p=NULL;
   printf ("enter n:\n");
   scanf ("%d",&n);
   printf ("appearance of the massive:\n");
   for (i=0;i<n;i++)
   scanf ("%d",&a[i]);

  int k=2;
  for (i=n-1;k && a[i]>=0;i--) if(a[i]<0) {k--;p=i}

    if (p<0)
        printf ("otr net\n");
    else printf ("otr:%d",a[p]);

    return 0;
}
Годится?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 04.10.2015, 12:48   #3
Иван_Black
Новичок
Джуниор
 
Регистрация: 04.10.2015
Сообщений: 2
По умолчанию

при вводе: 1 -2 -3 0 5
программа выводит 1, как-то непонятно...
Иван_Black вне форума Ответить с цитированием
Старый 04.10.2015, 12:49   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну напиши костыль:a[p-1]
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
работа с указателями compiler90 Visual C++ 1 04.06.2012 18:52
Работа с указателями stas135642 Общие вопросы C/C++ 2 21.11.2010 15:05
проблема с указателями raspberry Помощь студентам 2 20.04.2010 23:04
проблема с указателями =\ shad0w Общие вопросы C/C++ 9 09.12.2007 03:36