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

Работа с текстовыми файлами - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ строки и множества в С http://www.cyberforum.ru/cpp-beginners/thread147899.html
Вывести в обратном порядке третье слово
C++ Матрицы в С++ Здравствуйте, форумчане...я, уповая на ваше помощь, прошу помочь мне с программой... Смысл задачи: Дана символьная матрица. Характеристикой строки назовем длину строки. Определить номер строки, имеющей наибольшую характеристику. http://www.cyberforum.ru/cpp-beginners/thread147894.html
вывести элементы массива целых чисел C++
вывести элементы массива целых чисел, которые находится между max и min
C++ Функция которая сравнивает два целых числа и возвращает результат сравнения в виде знака: >, < или =
Используя функцию, которая сравнивает два целых числа и возвращает результат сравнения в виде знака: >, < или =, вычислить количество равных среди введенных трех чисел x, у, t.
C++ строки и множества в С http://www.cyberforum.ru/cpp-beginners/thread147877.html
Вывести N последних строчных русских букв.
C++ Разработать программу, в которой оформить функцию вычисления интегралу от формальной функции с использованием формул Разработать программу, в которой оформить функцию вычисления интегралу от формальной функции с использованием формул подробнее

Показать сообщение отдельно
accept
4837 / 3236 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
21.06.2010, 12:23     Работа с текстовыми файлами
слова из потока ввода
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
 
#define MAXWORD  100   /* максимальная длина слова */
 
 
int main(void) /* ANSI C89 */
{
    FILE *ifp, *ofp;
    int c;
    char word[MAXWORD], *ptr;
    enum { NO, YES } inword = NO;
    
    
    ifp = stdin;
    
    ofp = fopen("output.txt", "w");
    
    
    /* проверить, открылись ли файлы */
    
    
    while ((c = getc(ifp)) != EOF) {
        
        c = (unsigned char) c;
        
        if (ispunct(c) == 0 && isspace(c) == 0) {
            
            if (inword == NO) {
                
                inword = YES;
                
                ptr = word;
            
            }
        
            *ptr++ = c;
            
            *ptr = '\0';
        
        }
        
        if (ispunct(c) != 0 || isspace(c) != 0) {
            
            if (inword == YES) {
 
                inword = NO;
        
                for (ptr = word;
                     isdigit(*ptr) != 0 && *ptr != '\0';
                     ptr++)
                    ;
                
                if (*ptr == '\0') {
                
                    printf(".%s." "\n", word);
                
                    fprintf(ofp, " %s", word);
            
                }
            
            }
        
        }
        
    }
    
    
    fclose(ofp);
    
    
    return EXIT_SUCCESS;
}
здесь вывод
Код
[guest@station src]$ echo aaaa3a bbb2 333 1 a1 1a 3 | ./test
.333.
.1.
.3.
[guest@station src]$ cat output.txt
 333 1 3[guest@station src]$
 
Текущее время: 11:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru