1 / 1 / 0
Регистрация: 07.12.2010
Сообщений: 15
1

Вывести из файла на экран только те строки, в которых есть числа

17.05.2011, 23:56. Показов 1112. Ответов 2
Метки нет (Все метки)

Требуется написать программу, которая выводит из файла на экран только те строки, в которых есть числа. Написал что-то, но оно работает неверно: скорее всего косяк где-то в определении конца строки и конца файла. Реализовывал через коды символов ASCII. Не могли ли бы вы помочь в доработке?
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
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <iostream.h>
#define FPATH "C:\\g.txt"
void main ()
{
FILE *num;
int i, j;
int kod;
char string[20][90];                               // массив для заталкивания строк
if ((num=fopen(FPATH,"rt"))==NULL)
   {
   printf("\nError has occured!\n");
   exit(1);
   }
for(i=0;kod!=EOF;i++)                            // проверка на конец файла
   for(j=0;kod!=10;j++)                           // проверка на конец строки
   {
   fscanf(num, "%c",&string[i][j]);             // считываем символ
   kod=string[i][j];                                 // получаем его код
   if (kod>=48 && kod<=57)                     // если 48>=kod>=57 (цифра в промежутке от 0 до 9)
     {
     for(j=0;string[i][j]!='\n';j++)        // с начала строки и до её конца
        printf("%c",string[i][j]);           // выводим её посимвольно
     printf("\n");
     break;                                     // переходим на другую строку, завершая цикл
     }
   }
fclose(num);
}
Добавлено через 43 минуты
Вместо
C
1
2
for(i=0;kod!=EOF;i++)                            // проверка на конец файла
   for(j=0;kod!=10;j++)                           // проверка на конец строки
должно быть
C
1
2
for(i=0;!feof(num);i++)                            // проверка на конец файла
   for(j=0;string[i][j]!='\n';j++)  // проверка на конец строки
Но на выходе всё равно получается дикий трэш.
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.05.2011, 23:56
Ответы с готовыми решениями:

Вывести из файла на экран только содержащие двузначные числа строки
Дорогие форумчане, не откажите в помощи!! Вот есть задание &quot;написать программу, которая считывает...

Считать текст из файла и вывести на экран только строки, содержащие двузначное числа
Написать программу, которая считывает текст из файла и выводит на экран только строки, содержащие...

Вывести на экран только те трёхзначные числа у которых все цифры различны
вывести на экран только те трёхзначные числа у которых все цифры различны

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

2
2479 / 1906 / 951
Регистрация: 21.12.2010
Сообщений: 3,473
Записей в блоге: 10
18.05.2011, 00:28 2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
#include<stdio.h>
#include<string.h>
 
int main(){
    FILE *f=fopen("1.txt", "r");
    if(!f){perror("Error"); return -1;}
    char b[200], *dig="0123456789";
    while(fgets(b, sizeof(b), f)){
        if(strpbrk(b, dig)) puts(b);
    }
    fclose(f);
    return 0;
}
0
1 / 1 / 0
Регистрация: 07.12.2010
Сообщений: 15
18.05.2011, 09:51  [ТС] 3
Спасибо, но хотелось бы, чтобы внесли поправки в мою программу, т.к. задача была поставлена на решение именно способом сравнения ASCII-кодов.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.05.2011, 09:51
Помогаю со студенческими работами здесь

Прочитать текст из файла и вывести в другой файл только те строки, в которых есть слова, начинающиеся с буквы М
Прочитать текст из файла и вывести в другой файл только те строки, в которых есть слова,...

Вывести на экран из файла только строки, содержащие двузначные числа
Написать программу, которая считывает текст из файла и выводит на экран только строки, содержащие...

Считать текст из файла и вывести на экран только строки, содержащие двузначные числа
Написать прогу,которая считывает текст из файла и выводит на экран только строки,содержащие...

Считать текст из файла, и вывести на экран только строки, содержащие двузначные числа
Помогите пожалуйста написать программу, которая считывает текст из файла и выводит на экран только...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru