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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 10.03.2012, 00:41   #11
prowoke
Пользователь
 
Регистрация: 29.09.2011
Сообщений: 10
По умолчанию

Цитата:
Сообщение от ERAGORN Посмотреть сообщение
если массив arr не из char - попробуйте сделать его таким.
Но ведь там должны быть целые числа.
prowoke вне форума Ответить с цитированием
Старый 10.03.2012, 01:09   #12
ERAGORN
Пользователь
 
Аватар для ERAGORN
 
Регистрация: 02.01.2012
Сообщений: 46
По умолчанию

Цитата:
А мне надо, чтобы массив заполнялся с клавиатуры. И чтобы размер его
определялся динамически.
В любом случае вам нужно задать начальный размер массива. Массив не может увеличивать свой размер по факту задания нового элемента.
ERAGORN вне форума Ответить с цитированием
Старый 10.03.2012, 01:43   #13
prowoke
Пользователь
 
Регистрация: 29.09.2011
Сообщений: 10
По умолчанию

Цитата:
Сообщение от ERAGORN Посмотреть сообщение
В любом случае вам нужно задать начальный размер массива. Массив не может увеличивать свой размер по факту задания нового элемента.
Ну а как, если количество элементов задаётся по ходу?
prowoke вне форума Ответить с цитированием
Старый 10.03.2012, 02:35   #14
ERAGORN
Пользователь
 
Аватар для ERAGORN
 
Регистрация: 02.01.2012
Сообщений: 46
По умолчанию

Код:
#include <stdio.h>
#include <stdlib.h>


struct Link
{
    int value;
    Link *next;
};

void add ( Link *head, int val )
{
    Link *last;

    Link *new = (Link*)malloc(sizeof(Link));
    new->value = val;
    new->next = 0;

    if ( last = head ){
        while ( last->next )
            last = last->next;
        last->next = new;
    }else
        last = new;
}

void deleteList( Link *head )
{
    while ( head ){
        temp = head->next;
        free(head);
        head = temp;
    };
}

int main()
{
    Link *head = 0;
    Link *curent;
    int number, count;

    for(;;){
        scanf("%d", &number );
        if ( !number )
            break;
        add(head, number);
    };

    count = 0;
    for ( curent = head; curent; curent = curent->next ){
        if ( curent->next )
            if ( (curent->value < 0 && curent->next->value > 0) || 
                (curent->value > 0 && curent->next->value < 0) )
                ++count;
    };

    printf("%d", count);

    deleteList(head);

    system("pause");

    return 0;
}

Последний раз редактировалось ERAGORN; 10.03.2012 в 02:55.
ERAGORN вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с определением кодировки ZePr Общие вопросы Delphi 8 08.01.2012 15:03
проблема с определением параметра при реализации запроса Margarett Помощь студентам 3 14.03.2010 17:56
Проблема с определением процента загрузки процессора Jogik_86 Помощь студентам 0 17.12.2009 03:28
Проблема с определением строки в макросе Евгений(mE) Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 17.11.2008 11:40
проблема с определением внешнего ключа! veter_s_morya SQL, базы данных 1 26.06.2008 18:37