Форум программистов, компьютерный форум CyberForum.ru

Чтение из файла - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Найти четные и нечотные елементы массива http://www.cyberforum.ru/cpp-beginners/thread571444.html
#include "stdafx.h" #include <iostream> #include <conio.h> using namespace std; int _tmain(int argc, _TCHAR* argv) { setlocale(0, ""); int a;
C++ Заменить все максимальные элементы нулями (используя vector) Дана последовательность чисел. Заменить все максимальные элементы нулями. Вот в этой теме я нашла решение => http://www.cyberforum.ru/cpp-beginners/thread534516.html , но мне нужно с использованием класс-контейнера вектор, прошу помощи. http://www.cyberforum.ru/cpp-beginners/thread571419.html
Помогите с написанием программы по курсовой работе C++
Помогите с написанием программы по курсовой работе на тему:"Автоматизація обліку книг в публічній бібліотеці".:sorry: Очень нужно.
Люди...подскажите пожалуйста решение задачи) C++
Найти точку D, симметричную точку A относительно стороны BC.
C++ Определить, является ли последовательность из n действительных чисел убывающей http://www.cyberforum.ru/cpp-beginners/thread571403.html
пообещал помочь девушке, которая мне очень нравится, но самому задали задачи и поэтому не успеваю сделать все сам. а не сделаю, так горело мое свидание синем пламенем(((( помогите влюбленному студенту 1.Разработать алгоритм и программу, определяющую является ли последовательность из n действительных чисел a1, a2,…,an убывающей последовательностью. 0<=n<=255, 0<=ai<=1000 определяются...
C++ Частотный словарь приставок Помогите пожалуйста, нужно составить частотный словарь приставок, имеющегося текстового файла. Я написала программу, но сразу же при проверки на корректность, выскакивает результат "Ошибка", да и то не на русском, а закарючки какие-то. Текстотовый файл в папке проекта. Может где-то ошиблась #include "stdafx.h" #include <fstream> #include <string> #include <stdio.h> #include <conio.h>... подробнее

Показать сообщение отдельно
modwind
 Аватар для modwind
52 / 52 / 1
Регистрация: 09.03.2012
Сообщений: 101
11.05.2012, 20:04     Чтение из файла
Можно попроще, но менее надёжно:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <vector>
#include <string>
 
int main()
{
    std::vector<int> N;
    std::vector<float> utr;
    std::vector<float> KPD;
    std::string value;
    FILE* f = fopen("file.txt","rb");
    if (!f) return 1;
 
    for (size_t i=0;;i++)
    {
        char buf[1024];
        if (!fgets(buf, 1024, f)) break;
        if (i == 0) continue;
 
        int N0;
        float utr0;
        float KPD0;
        sscanf(buf,"%d | %f | %f", &N0, &utr0, &KPD0);
        N.push_back(N0);
        utr.push_back(utr0);
        KPD.push_back(KPD0);
    }
 
    fclose(f);
    return 0;
}
Добавлено через 3 минуты
modwind, и второй столбик у вас при чтении округляеться почему то тоесть вместо 335.25 в массиве 335.00 и столбик с кпд выводиься в массиве 00000 вместо 0.78
Ну, это проблема локали скорее всего. Вы поставили русскую, соответственно в дробных числах ожидается разделитель дробной части "запятая" вместо точки. Верните английскую, хотя бы на время.
 
Текущее время: 19:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru