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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 20, средняя оценка - 4.75
safary
Сообщений: n/a
#1

Строковые переменные - C++

11.12.2008, 00:32. Просмотров 2635. Ответов 1
Метки нет (Все метки)

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

Добавлено через 14 часов 22 минуты 18 секунд
ЗЩа деньги кто нить сделает?

Добавлено через 2 часа 40 минут 28 секунд
задача решена, вот код:
Код
var 
 C: Char; 
begin 
 Assign(Input, 'input.txt'); 
 Reset(Input); 
 Assign(Output, 'output.txt'); 
 Rewrite(Output); 
 while not EOF do begin 
   while not EOLN do begin 
     Read(C); 
     case C of 
       '0': Write('ноль'); 
       '1': Write('один'); 
       '2': Write('два'); 
       '3': Write('три'); 
       '4': Write('четыре'); 
       '5': Write('пять'); 
       '6': Write('шесть'); 
       '7': Write('семь'); 
       '8': Write('восемь'); 
       '9': Write('девять'); 
     else 
       if C = '.' then 
         WriteLn('.') 
       else 
         Write(C); 
     end; 
   end; 
   WriteLn; 
   ReadLn; 
 end; 
 Close(Input); 
 Close(Output); 
end.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.12.2008, 00:32     Строковые переменные
Посмотрите здесь:

Строковые переменные - C++
Дали посмотреть код. Помогите, пожалуйста, разобраться со строковыми переменными. Тотальная путаница с LPCWSTR/const char/char. Программа...

Строковые переменные. - C++
Дано последовательность, что состоит из 1-30 слов, в каждом слове 1-5 букв, все слова разделены запятой, в конце точка. Напечатать все...

Строковые переменные - C++
Подскажите, какой строковый тип данных поддерживает следующие действия: необходимо ввести с клавиатуры строку, содержащую слова, пробелы,...

Задача на строковые переменные в c++ - C++
Текст задачи: Найти самое длинное слово во введенной строке, вывести номер этого слова и номер его первого символа. Пример: ввод : аа...

Структуры и строковые переменные - C++
Помогите, пожалуйста, найти ошибку. Четвёртый час сношаюсь с задачей, не могу найти, в чём баг. Задача простейшая с массивом из двух...

Строковые переменные (символьные массивы) - C++
Создать две строковые переменные (символьные массивы), содержащие ваше имя и фамилию. Выполнить с ними с помощью строковых функций...

Строковые переменные: Найти все слова, в которых буква ''а'' входит не менее двух раз - C++
Дан текст. Найти все слова, в которых буква ''а'' входит не менее двух раз.

C++ строковые - C++
3 задача №1. Написать и протестировать функцию STRP(str1,str2), которая возвращает указатель на последнее вхождение символа из строки...

строковые - C++
Привет всем) Вот такая штука Написать программу, которая считывает английский текст из файла и выводит на экран слова, начинающиеся с...

Строковые массивы - C++
Приветствую, господа программисты! Не могу разобраться с функциями, в которых присутствуют строки, нужна помощь. Мне нужно...

Строковые массивы - C++
Уважаемые форумчане, у меня задача заключается в следущем:необходимо в строковом массиве переставить слова в обратном порядке,я делаю...

Строковые объекты - C++
С клавиатуры вводится предложение, символы которого надо вывести по функции корень квадратный. Объясните как реализовать, чтобы символы...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
accept
4820 / 3240 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
11.12.2008, 03:21     Строковые переменные #2
Код
 
#include <stdio.h>
#include <ctype.h>

#define MAXLINE  1000    /* максимальная длина строки */

/* считывает текст из файла и выводит его на экран,
   заменив цифры от 0 до 9 на слова, каждое предложение с новой строки */
main()
{
    char *printnumber(int c);
    FILE *fp;
    char line[MAXLINE], *p;
    char *fname = "file.txt";
    
    if ((fp = fopen(fname, "rb")) == NULL)
        return 1;
    while ((p = fgets(line, MAXLINE, fp)) != NULL)
        for ( ; *p != '\0'; p++)
            if (isdigit(*p))
                printf("%s", printnumber(*p));
            else if (*p == '.') {
                putchar(*p);
                putchar('\n');
                // раскомментируй, если надо убирать пробелы в начале
                /*
                if (isspace(*(p+1))) {
                    while (isspace(*++p))
                        ;
                    p--;
                }        
                */
            } else    
                putchar(*p);
    fclose(fp);
    return 0;
}

#define MAXWORD  100

/* printnumber:  выводит слово для цифры */
char *printnumber(int c)
{
    static char nword[MAXWORD];
    
    sprintf(nword, "%s",
        c == '0' ? "ноль"   : c == '1' ? "один"   : c == '2' ? "два"    :
        c == '3' ? "три"    : c == '4' ? "четыре" : c == '5' ? "пять"   :
        c == '6' ? "шесть"  : c == '7' ? "семь"   : c == '8' ? "восемь" :
        c == '9' ? "девять" : "");
    return nword[0] ? nword : NULL;
}
Yandex
Объявления
11.12.2008, 03:21     Строковые переменные
Ответ Создать тему
Опции темы

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