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

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

Войти
Регистрация
Восстановить пароль
 
AlenaShch
0 / 0 / 0
Регистрация: 06.10.2012
Сообщений: 29
#1

Работа с файлами. Вывод нечетных строк с указанием номеров строк - C++

21.04.2013, 01:02. Просмотров 330. Ответов 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
36
#include "stdafx.h"
#include "stdlib.h"
#include <stdio.h>
#include <locale>
#include <iostream>
using namespace std;
 
 
int main(int argc,char *argv[])
{setlocale (LC_ALL,"Russian");
FILE *fn;
char c;
 
/*if(argc==1)
    {printf("\n Не указано имя файла\n");
    exit(1);
    }*/
fn=fopen("c:\\ukazat.txt","r"); /*Открываем файл на чтение, как текстовый. argv[1] указывает на строку с именем файла*/
 
if (fn==NULL)
    {printf("\nФайл не найден\n");
    exit(1);
    }
 
int i=1;
 
while((c=fgetc(fn))!=EOF) /*Чтение символа из потока*/
    {if (c=='\n')
        cout<<"\rСтрока "<<i++<<'\t';
        cout<<c;    /*Вывод символа на экран*/
            
    }
fclose(fn); /*Закрытие файла*/
printf("\n\n\n");
return 0;
}
Тут проблема с выводом: хочу, чтобы в начале был номер строки, а потом строка. Но, если так делаю, то "строка" пишется поверх текста из файла.
Как я понимаю, для того, чтобы разделить строки на четные/нечтные, надо создать массивы каждой строки из отдельных символов. Как это сделать?

C++
1
2
3
4
5
6
7
8
9
while((c=fgetc(fn))!=EOF) /*Чтение символа из потока*/
        {if (c=='\n')
        i++; //Считаем, сколько строк в файле
    }
 
for (n=1;n<i;n++)   
            {while(c!='\n')
        str=str+c;
    }
Тут неправильно. Не понимаю, как сделать, потому что у "с" нет квадратных скобок, где бы указывалось от чего оно. Были попытки склеить строку через strcpy, но не получилось, потому что "c" - это не константа, а там требуется константа.
Посоветуйте что-нибудь, пожалуйста!

Еще не работает программа с тем, что забрано в комментарии, если это вернуть обратно:

C++
1
2
3
4
/*if(argc==1)
    {printf("\n Не указано имя файла\n");
    exit(1);
    }*/
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.04.2013, 01:02     Работа с файлами. Вывод нечетных строк с указанием номеров строк
Посмотрите здесь:

Работа с файлами C++. Подсчёт строк. - C++
Здравствуйте. Есть функция для подсчёта строк в файле. Выглядит она следующим образом: int count_string(FILE *file) { char...

Обработка строк и работа с файлами... - C++
Работа с обработкой строк и работу с файлами средствами языка Си. Исходный текст должен содержаться в одном файле, результат — во втором...

Работа с файлами и массивами строк - C++
Помогите пожалуйста :(:wall: Нужно написать программу, которая считывает текст из файла и записывает каждое слово в отдельный элемент...

Строки, работа с файлами и массивами строк - C++
Требуются срочная помощь :swoon: зачет через 2 часа... Не хватает 2х лаб... помогите люди добрые кто чем может :sorry: Лаба...

Работа с файлами. Запись и чтение строк - C++
Добавляю строку в файл &quot;text.txt&quot; а потом пытаюсь получить количество строк в этом файле.. Проблема заключается в том что добавляю...

Элементы матрицы, стоящие на пересечении нечетных строк и нечетных столбцов заменить переменной P - C++
элементы матрицы Q,стоящие на пересечении нечетных строк и нечетных столбцов заменить переменной P.ПОМОГИТЕ ПОЖАЛУ:cry:ЙСТА ЧЕМ...

Элементы матрицы, стоящие на пересечении нечетных строк и нечетных столбцов, заменить переменной - C++
помогите решить!!!!!! элементы матрицы Q,стоящие на пересечении нечетных строк и нечетных столбцов заменить переменной P. Пожалуйста,...

Элементы матрицы, стоящие на пересечении нечетных строк и нечетных столбцов заменить переменной P - C++
элементы матрицы Q,стоящие на пересечении нечетных строк и нечетных столбцов заменить переменной P.ПОМОГИТЕ ПОЖАЛУЙСТА ЧЕМ СМОЖИТЕ!!!БУДУ...

Не получается заполнение двумерного массива случайными числами с указанием количества строк и столбцов. - C++
Помогите исправить что не так: #include&lt;iostream.h&gt; #include&lt;math.h&gt; #include&lt;conio.h&gt; void main() { int n, m, F=0, a; ...

Как включить отображение номеров строк в MSVS? - C++
Привет. Я пользуюсь MS Visual C++ ... если компиллятор сообщает .....pg.cpp(135) например, как искать линию под указанным номером? ...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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