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

Из текстового файла распечатать строку с заданным номером - C++

Восстановить пароль Регистрация
 
Wunschpunsch
0 / 0 / 0
Регистрация: 30.11.2013
Сообщений: 32
19.05.2014, 14:30     Из текстового файла распечатать строку с заданным номером #1
Нужно доработать программу.Зависает.С++.Файлы

После ввода в консоль номер строки, консоль зависает.

Вот код:

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 "stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
using namespace std;
void main()
{
    setlocale(LC_ALL, "RUS");
    FILE *fp;
    char str[128];
    int i;
    if((fp = fopen("sample.txt", "w"))==NULL) {
        printf("Не удается открыть файл.\n");
        exit(1);
    }
    cout << "введите номер строки: ";
    cin >> i;
    while(!feof(fp)) {
        if(fgets(str, 126, fp)) 
        {       
            
                printf("%s", str);
            
        }
    }
    fclose(fp);
    system("pause");
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.05.2014, 14:30     Из текстового файла распечатать строку с заданным номером
Посмотрите здесь:

Добавить строку с заданным номером C++
C++ Написать программу, выводящую из файла на экран строку с заданным номером
Сформировать динамический массив строк; удалить из него строку с заданным номером C++
C++ Программно пронумеровать в блокноте строки и удалить строку с заданным номером
Создать двумерный массив. Удалить из него строку и столбец с заданным номером C++
C++ Сформировать двумерный массив. Удалить из него строку и столбец с заданным номером
Распечатать строку с заданным номером из текстового файла C++
Прочитать из файла строку с заданным номером C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Sonance
6 / 6 / 3
Регистрация: 15.02.2013
Сообщений: 55
19.05.2014, 15:15     Из текстового файла распечатать строку с заданным номером #2
Цитата Сообщение от Wunschpunsch Посмотреть сообщение
if((fp = fopen("sample.txt", "w"))==NULL)
Скорее всего потомучто вы открываете вайл для записи, и в цикле условие соответственно всегда выполняется. Попробуйте заменить w на r.

Добавлено через 29 минут
Все равно неправильно, вот как надо
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
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
using namespace std;
void main() 
{
setlocale(LC_ALL, "RUS");
FILE *fp;
char str[128];
int i;
if((fp = fopen("sample.txt", "r"))==NULL) {
printf("Не удается открыть файл.\n");
system("pause");
exit(1);
}
cout << "введите номер строки: ";
cin >> i;
int g(0);
while(fgets(str, 126, fp)) {
g++;
if(i==g){
printf("%s", str);
}
}
fclose(fp);
system("pause");
}
Yandex
Объявления
19.05.2014, 15:15     Из текстового файла распечатать строку с заданным номером
Ответ Создать тему
Опции темы

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