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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 25, средняя оценка - 4.72
!Андрей!
6 / 6 / 0
Регистрация: 31.01.2012
Сообщений: 134
#1

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

06.04.2012, 01:08. Просмотров 3254. Ответов 8
Метки нет (Все метки)

Вот само задание:

С помощью текстового редактора создать файл .... длина строки текста не должна превышать 70 символов. Файл должен иметь тип .dat
Программа должна уметь:

1) Выводить текст на экран
2) По нажатию произвольной клавиши - должна поочерёдно выделять слова с первой и последней одинаковой буквой
3) Определить количество слов у которых совпадает первая и последняя буква


Проблемы:
Не могу сделать норм вывод на экран (выводит такую калабубру)

Чтение из файла. СИ++

т.е. пробелы пишет в начале строчки, и слова плохо переносит, ну а с остальным - я вообще хз как делать.

Вот имеющийся код:

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
# include <stdio.h>
# include <iostream>
# include <conio.h>
# include <locale.h>
# include <stdlib.h>
# include <Windows.h>
using namespace std;
 
int main()
{
    system("color 1f");
    setlocale(LC_ALL,"Rus");
 
        FILE *file = fopen("input.dat","r+");
        
        char str[70];       
            while(!feof(file))
            {
                if(!fgets(str,70,file)) break;
                  puts(str);
            }
        
        cout<<"\n\n";
        
        fclose(file);
    getch();
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.04.2012, 01:08     Чтение из файла. СИ++
Посмотрите здесь:

чтение файла - C++
в книге ifstream aa; aa.open(............); нам объясняли: ifstream open(''lala.txt,ios::....); точно не помню

Чтение файла - C++
Знаю, что очень ламерский вопрос... Вот только нихрена не получается! Я и так и сяк вертел... Вобщем, есть файл .txt с записями вида ...

чтение файла - C++
Как реализовать след.: считывать файл до определённого символа?

Чтение из файла - C++
Здравствуйте. Хочу, чтобы программа читала значения переменных из файла input.txt: Please choose the crystal lattice. Type 1 for BCC, 2...

Чтение файла - C++
Добрый день, вопрос, конечно, повторяющийся и от поиска лопата сломалась, но 2 день не могу такое элементарное сделать, а именно:...

Чтение из файла - C++
Необходимо считать последовательность чисел из файла в массив. Есть функция которая это реализует. На вход ей подается имя файла и еще один...

Чтение из файла - C++
Подскажите как вывести на экран содержимое файла на Си, если данные разделены &quot;;&quot;. Файл имеет вид: 1;23233233;1234-43;иванов...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
pipets24
9 / 9 / 2
Регистрация: 04.04.2012
Сообщений: 59
06.04.2012, 02:50     Чтение из файла. СИ++ #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include<iostream>
#include<stdio.h>
void main()
{
char str[80];
FILE *file = fopen("input.dat","r+");
size_t readed;
readed = fread(str, sizeof(char), 70, file)
for (int i = 0, i < readed, i++)
{
std::cout << str[i];
}
}
вывод текста на экран должен примерно так выглядеть, а остальным влом заниматься, больно уж геморойно
OstapBender
583 / 521 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
06.04.2012, 03:12     Чтение из файла. СИ++ #3
так строки то небось поболе 70 символов.
!Андрей!
6 / 6 / 0
Регистрация: 31.01.2012
Сообщений: 134
06.04.2012, 11:10  [ТС]     Чтение из файла. СИ++ #4
Цитата Сообщение от OstapBender Посмотреть сообщение
так строки то небось поболе 70 символов.
Это да, я вот и хочу правильно вывод сделать, например если слово не влезает - чтобы его переносило

Добавлено через 6 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
int main()
{ 
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    system("color 1f");
 
    char str[80];
    FILE *file = fopen("input.dat","r+");
    size_t readed;
    while(!feof(file))
    {
    readed = fread(str, sizeof(char), 70, file);
    for (int i = 0; i < readed; i++)
        {
           if(i > 60 && str[i] == ' ')
              { cout<<"\n"; break; }
           else
              cout << str[i];
        }
    }
        getch();
        return 0;
}
Что-то типо такого не прокатывает

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
31
32
33
34
35
# include <stdio.h>
# include <iostream>
# include <conio.h>
# include <locale.h>
# include <stdlib.h>
# include <Windows.h>
using namespace std;
 
int main()
{ 
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    system("color 1f");
 
    char str[80];
    FILE *file = fopen("input.dat","r+");
    size_t readed;
    while(!feof(file))
    {
    readed = fread(str, sizeof(char), 70, file);
    for (int i = 0; i < readed; i++)
        {
           if(i > 65 && str[i] == ' ')
              {
                 cout<<"\n";
                 //for(int j = i; j < strlen(str); j++)
                    //str[j] = str[j+1]; 
                 
              }
           cout << str[i];
        }
    }
        getch();
        return 0;
}
поправил на это, переносит норм, теперь удалить бы пробелы с начала строки
pipets24
9 / 9 / 2
Регистрация: 04.04.2012
Сообщений: 59
06.04.2012, 14:39     Чтение из файла. СИ++ #5
прошу прощенья, лажанул)) прочитал не внимательно задание и подумал что во всем файле не более 70 символов))
!Андрей!
6 / 6 / 0
Регистрация: 31.01.2012
Сообщений: 134
06.04.2012, 21:36  [ТС]     Чтение из файла. СИ++ #6
да вот в этом то и проблема(

я нагуглил какую-то функцию trim();
но честно не понял как ей пользоваться толком

Не подскажешь что надо сделать с выводом чтобы прога корректно текст выводила?
т.е. чтобы не было

aaa bbbb cc
c dd eeeeee
_ _ fffff
sovaz1997
CEO SOVAZ Corp.
380 / 226 / 2
Регистрация: 17.12.2011
Сообщений: 819
Записей в блоге: 1
Завершенные тесты: 1
06.04.2012, 21:43     Чтение из файла. СИ++ #7
http://cplus-plus.ru/video-on-c-onli...is-v-fayl.html
!Андрей!
6 / 6 / 0
Регистрация: 31.01.2012
Сообщений: 134
06.04.2012, 21:51  [ТС]     Чтение из файла. СИ++ #8
Спасибо! Буду смотреть/учиться. Если будет непонятно то напишу в тему)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.04.2012, 22:29     Чтение из файла. СИ++
Еще ссылки по теме:

Чтение из файла - C++
FILE *fp; char gf, a1, a2, a3; int a, i, j, k; fp = fopen (&quot;database.txt&quot;, &quot;r&quot;); do { fscanf (fp, &quot;% %* % %* %s&quot;, a1,...

Чтение из файла на C - C++
Имеется текстовый файл, в нём заданы числа (примерно такого вида: 40 30 66 1 132 и т.д.), числа можно записать и построчно (в каждой строке...

Чтение из файла - C++
Такое дело: В одном методе создаётся экземпляр ifstream, открывается,читает и закрывается. Позже: в другом классе и методе создаётся...

Чтение из файла - C++
Добрый вечер! Помогите пожалуйста с одной проблемкой! Я Создала структуру node Вот он: struct node { char sym; float pro; ...

Чтение с файла - C++
Добрый день. Подскажите пожалуйсто. В файле .dat маходятся по три числа в строке(445.345 43.54 345.34) их разделяют пробелы. Как мне...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
OstapBender
583 / 521 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
06.04.2012, 22:29     Чтение из файла. СИ++ #9
!Андрей!, сделай чтение посимвольное. или читай fgets только заведомо больше длины макс строки.
Yandex
Объявления
06.04.2012, 22:29     Чтение из файла. СИ++
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru