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

Записать в выходной файл все слова начинающиеся с буквы заданной пользователем

04.03.2013, 20:33. Показов 1201. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте дорогие форумчане! Есть вот такое задание на языке С. Нужно разработать программу которая должна записывать в выходной файл все слова начинающиеся с буквы заданной пользователем. Не знаю как доделать цикл, какое условие там надо, кто знает??
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 <locale.h>
FILE *A, *B;
void main () {
char x, c, y, n, b;
if ((A=fopen("test1.txt","rt"))==NULL){
printf ("Oshibka otkritita faila test1.txt");
return;}
 if ((B=fopen("test2.txt","a+"))==NULL){
printf ("Oshibka otkritia faila test2.txt");
return;}
printf ("BBegiTe 6ykBy\n");
scanf ("%с",&n);
x=fgetc(A); b=fgetc(A);
if (x!=' ') b=x;
while (b!=EOF)
{
 
    if((x==' ')&&(b!=' ')&&(b==n));
        while ((b!=' ')||(b!=EOF)){
             //вот здесь должно быть ещё какое то условие
fputc(b,B);
b=fgetc(A);}
}
fclose(A);
fclose(B);  
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.03.2013, 20:33
Ответы с готовыми решениями:

Выделить из строки str1 все слова, начинающиеся с гласной буквы, а из строки str2 - слова, начинающиеся с согласной
Выделить из строки str1 все слова, начинающиеся с гласной буквы, а из строки str2 - слова, начинающиеся с согласной. Образовать строку...

Вывести все слова файла text1.txt, начинающиеся с гласных букв латинского алфавита. Результат записать в файл
Вывести все слова файла text1.txt, начинающиеся с гласных букв латинского алфавита. Результат записать в файл text2.txt. на си

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

2
 Аватар для lowercase
213 / 202 / 85
Регистрация: 09.05.2012
Сообщений: 494
04.03.2013, 21:00 2
используйте fscanf с форматом %s. семейство функций чтения *scanf читают строки до первого разделителя(например, пробела или переноса на новую строчку), таким образом можно почти безобидно считывать все слова из файла. дальше вам остается лишь проверять первый символ каждой строки на соотвествие введеному с клавиатуры пользователем символом и если результат такой проверки положительный - записать слово в файл:

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
#include <stdio.h>
#include <stdlib.h>
 
int main(int argc, char** argv){
    FILE* in;
    FILE* out;
    if((in = fopen("in", "r")) == NULL){
        printf("Error opening file 'in'");
        return 0;
    }
    if((out = fopen("out", "w")) == NULL){
        printf("Error opening file 'out'");
        fclose(in);
        return 0;
    }
 
    printf("Enter a letter>");
    int c = getchar();
 
    while(!feof(in)){
        char word[32];
        fscanf(in, "%s", word);
        if(word[0] == c){
            // так как нигде небыло указано, то я
            // решил записывать каждое слово с новой сточки.
            fprintf(out, "%s\n", word);
        }
    }   
    
    fclose(in);
    fclose(out);
    return 0;
}
1
0 / 0 / 1
Регистрация: 24.02.2013
Сообщений: 34
05.03.2013, 08:26  [ТС] 3
Спасибо за подсказку, теперь у меня другая проблемка связанная с компилятором
C
1
(18): error C2143: синтаксическая ошибка: отсутствие ";" перед "тип"
C
1
(23): error C2065: c: необъявленный идентификатор
я знаю что это связанно со стандартом С89, и надо описать переменную в начале блока, но как бы я не колдовал, то одну ошибку то другую, может вы знаете как правильно описать её в начале блока??
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
05.03.2013, 08:26
Помогаю со студенческими работами здесь

Вывести слова начинающиеся с заданной буквы
Ввести строку и букву, вывести только слова, начинающиеся с заданной буквы. #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; ...

В символьной строке удалить все слова, начинающиеся с гласной буквы
Добрый день,есть задание:В символьной строке удалить все слова, начинающиеся с гласной буквы.Сказали работать с указателями.Я написал...

Дана строка символов до точки. Удалить из нее все слова, начинающиеся с буквы «а»
Дана строка символов до точки. Удалить из нее все слова, начинающиеся с буквы «а».

Создать новый текстовый файл, в каждой строке которого записаны слова, начинающиеся с буквы ‘a’
Дан текстовый файл, в каждой строке которого записано по несколько слов, разделенных пробелом. Создать новый текстовый файл, в каждой...

Удалить из текста все слова, начинающиеся с согласных, а остальные переписать во второй файл
Удалить из текста все слова, начинающиеся с согласных. Остальные переписать во второй файл. Но при этом необходимо сохранять переносы строк...


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

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

Новые блоги и статьи
Простая нейросеть на КуМир: Создание и обучение
EggHead 16.03.2025
Искусственные нейронные сети — удивительная технология, позволяющая компьютерам имитировать работу человеческого мозга. Если вы хотя бы немного интересуетесь современными технологиями, то наверняка. . .
Исполнитель Кузнечик в КуМир: Решение задач
EggHead 16.03.2025
Среди множества исполнителей в системе КуМир особое место занимает Кузнечик — простой, но невероятно полезный виртуальный персонаж, который перемещается по числовой прямой, выполняя ваши команды. На. . .
Исполнитель Водолей в КуМир: Решение задач
EggHead 16.03.2025
Разработка алгоритмического мышления — одна из ключевых задач для начинающих программистов, и система КуМир предлагает отличный способ погрузиться в этот процесс. Среди множества исполнителей в этой. . .
Исполнитель Чертежник в КуМир: Решение задач
EggHead 16.03.2025
Представьте, что вы можете рисовать на бесконечной координатной плоскости, перемещая точку, которая оставляет след. По вашей команде она может поднять перо и двигаться, не оставляя следа, или. . .
Исполнитель Робот в КуМир: Решение задач
EggHead 16.03.2025
КуМир (Комплект Учебных МИРов) — это учебная среда программирования, разработанная специально для обучения базовым концепциям алгоритмизации. Её главная фишка — использование русскоязычного. . .
Исполнитель Черепаха в КуМир: Решение задач
EggHead 16.03.2025
Представьте, что вы впервые учитесь программировать, а перед вами стоит задача заставить маленькую виртуальную черепашку рисовать на экране. Звучит забавно? Эта идея зародилась ещё в 1967 году, когда. . .
Конвейеры данных с Apache Kafka
Javaican 16.03.2025
В мире, где данные стали новой нефтью, Apache Kafka зарекомендовал себя как мощный инструмент для построения надежных и масштабируемых конвейеров данных. Созданный изначально командой LinkedIn в 2011. . .
Deno против Node.js: Будущее JavaScript рантайма
run.dev 16.03.2025
За последнее десятилетие Node. js стал абсолютным лидером среди JavaScript-рантаймов и фактическим стандартом для серверной разработки на JavaScript. Но в 2018 году тот же разработчик, который создал. . .
SwiftUI или UIKit - что выбрать для нового приложения iOS?
mobDevWorks 16.03.2025
Когда Apple представила SwiftUI на WWDC 2019, многим показалось, что дни UIKit сочтены. Новый декларативный фреймворк предлагал радикально иной подход к разработке интерфейсов. Вместо кропотливого. . .
Docker: Руководство для начинающих по созданию первого приложения
Mr. Docker 16.03.2025
Docker — это платформа, которая упаковывает ваше приложение и все его зависимости в стандартизированные блоки, называемые контейнерами. Эти контейнеры изолированы друг от друга и от основной системы,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru