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

Переход на строку и пустая строка в файле - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.70
ol4ik
 Аватар для ol4ik
22 / 21 / 6
Регистрация: 08.04.2010
Сообщений: 90
09.12.2010, 22:23     Переход на строку и пустая строка в файле #1
Условие. Создайте два выходных файла: в один перепишите из каждой строки первые k слов, в другой - оставшиеся. Если в строке меньше, чем k слов, то во втором файле соответствующая строка должна быть пустой.

Я написала программу,она работает правильно.Но в первый файл она со второй строки исходного записывает всё в одну строку.А во втором,если слов меньше,чем k,то пустую строку не печатает.
Помогите,пожалуйста!

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
36
37
38
39
40
41
42
43
#include "stdafx.h"
#include <conio.h>
#include <iostream>
#include <string>
#include <stdio.h>
#include <stdlib.h>
 
using namespace std;
int main()
{   FILE *ex1,*ex2,*ex3;
    ex1=fopen("C://ex1.txt","r");
    ex2=fopen("C://ex2.txt","w");
    ex3=fopen("C://ex3.txt","w");
    int t=0,i;
    char s[256];
    cout<<"vvedite kol-vo slov ";
    cin>>t;
    if ((ex1=fopen("C://ex1.txt","r"))==0)
      cout<<"error";
    else
    {
    while (!feof(ex1))
    {unsigned int i=0;
     int n=0;
        fgets(s, 100, ex1);
        if(s[0]!= ' ') n++;
        while (i<strlen(s)) 
        {  
            if((s[i]==' ')&&(s[i+1]!=' ')) n++;
                if(n<=t)
                  fputc(s[i], ex2);
            else fputc(s[i+1], ex3);
        }
       if(n<=t)
                  fputc('\n', ex2);
            else fputc('\n', ex3);
    }}
    fclose(ex1);
    fclose(ex2);
    fclose(ex3);
    getch();
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.12.2010, 22:23     Переход на строку и пустая строка в файле
Посмотрите здесь:

Проверить, пустая ли строка. (fstream) C++
Проверка, пустая строка или нет C++
Пустая строка C++
C++ Ввести данные структуры, и если на входе пустая строка, функция возвращает "ноль" (Прокомментировать каждую строку)
Пустая строка в функции C++
C++ Как узнать что при считывание очередного слова в string был сделан переход на новую строку в файле?
Как в файле сделать переход на новую строку C++
Ввод данных пока строка не пустая C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Crudelis
Шаровик затейник
 Аватар для Crudelis
667 / 409 / 13
Регистрация: 06.05.2010
Сообщений: 1,109
10.12.2010, 02:09     Переход на строку и пустая строка в файле #2
вы опечатались нет такой функции fputc, есть fputs
ol4ik
 Аватар для ol4ik
22 / 21 / 6
Регистрация: 08.04.2010
Сообщений: 90
10.12.2010, 09:26  [ТС]     Переход на строку и пустая строка в файле #3
тогда странно,что у меня всё работает
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
10.12.2010, 17:51     Переход на строку и пустая строка в файле #4
Crudelis, с чего вы взяли, что нет? Есть. Записывает символ в поток. fputs-же записывает строку.
ol4ik
 Аватар для ol4ik
22 / 21 / 6
Регистрация: 08.04.2010
Сообщений: 90
10.12.2010, 23:00  [ТС]     Переход на строку и пустая строка в файле #5
вместо того,чтобы искать ошибки,когда "Я написала программу,она работает правильно.Но" и объяснять друг другу элементарные вещи,помогли бы мне разобраться =\
я уже получила зачёт за этот семестр,но просьба ещё актуальна.
Yandex
Объявления
10.12.2010, 23:00     Переход на строку и пустая строка в файле
Ответ Создать тему
Опции темы

Текущее время: 01:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru