Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Прочитать из файла в c++

93K
17 апреля 2014 года
swerve
1 / / 17.04.2014
Прочитать из файла последовательность целых чисел произвольной длины.Напечатать все положи-тельные числа, принадлежащие последовательности, в неубы-вающем порядке. Например, если дано 21, 12, 44, 21, -5, 63, 0, то должно быть напечатано 12, 21, 21, 44, 63.
помагите с c++ кодом пожалуйста
11K
18 апреля 2014 года
xAtom
65 / / 17.01.2011
Код:
#include <fstream>
#include <iostream>


struct s_node{
        int num;
        s_node* next;
};

void  node_add(s_node** lst, int num){
        s_node* p = *lst;
        while((p != NULL) && (p->num < num)){
                lst = &p->next;
                p   = p->next;
        }
        s_node* n = new s_node();
        n->next   = p;
        n->num    = num;
        *lst = n;
}

void  node_clear(s_node* lst){
        s_node* tmp;
        while(lst != NULL){
                tmp = lst;
                lst = lst->next;
                delete tmp;
        }
}


int main(void){
        std::ifstream fp("file.txt");
        if(! fp.is_open())
                return 1;

        s_node* lst = NULL;
        for(int num = 0; fp >> num;){
                if(num > 0)
                        node_add(&lst, num);
        }
        fp.close();

        for(s_node* p = lst; p != NULL; p = p->next)
                std::cout << p->num << ' ';
        node_clear(lst);
        return 0;
}
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог