Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
20 / 20 / 4
Регистрация: 31.10.2010
Сообщений: 1,240
Записей в блоге: 2

По одному слову поочередно из каждой строки записать в третью

07.12.2010, 18:31. Показов 1303. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброе время суток. Помогите плиз, ибо я начинающий программист. Даны два предложения char st1,st2, любого содержания, мне надо составить программу так, чтобы по одному слову поочередно из каждой строки записывалось в третью st3.Заранее говорю Спасибо!
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.12.2010, 18:31
Ответы с готовыми решениями:

Записать текст лесенкой(по одному слову в строке)
вот задача надо написать прогу на паскале. Имеется стихотворный текст(в строке не более 80символов)имеет четырех строчную форму . ...

Сформировать файл g, записав в каждой его в строке по одному слову из файла f
Здравствуйте. Дан текстовый файл f. Определить количество слов в файле. Сформировать файл g, записав в каждой его в строке по одному...

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

8
Freelance
Эксперт С++
 Аватар для asics
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
07.12.2010, 19:28
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

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
#include <stdio.h>
#include <string.h>
 
#define MAXSIZE 256
#define _MAXSIZE MAXSIZE * 2
#define DELIM " \n\t;:,.!?"
 
int main(void)
{
    char sen1[MAXSIZE], sen2[MAXSIZE], *con_wrds[_MAXSIZE];
    int j = 0, cnt = 0;
    printf("Enter first sentence: \n\t-> ");
    gets(sen1);
    printf("Enter second sentence: \n\t-> ");
    gets(sen2);
 
    printf("\nUnion sentence: \n\t-> ");
    for(char *p = strtok(sen1, DELIM); p ; p = strtok(NULL, DELIM))
    {
        con_wrds[j] = p;
        j += 2;
        ++cnt;
    }
 
    j = 1;
    for(char *p = strtok(sen2, DELIM); p; p = strtok(NULL, DELIM))
    {
        con_wrds[j] = p;
        j += 2;
        ++cnt;
    }
 
    for(int i = 0; i < cnt; ++i)
    {
        printf("%s ", con_wrds[i]);
    }
    return 0;
}
1
20 / 20 / 4
Регистрация: 31.10.2010
Сообщений: 1,240
Записей в блоге: 2
11.12.2010, 17:25  [ТС]
Вау, блестяще!!! Только мне не понятны функции #define....Можно ли их как-нибудь заменить просто переменными?
0
20 / 20 / 4
Регистрация: 31.10.2010
Сообщений: 1,240
Записей в блоге: 2
15.12.2010, 17:20  [ТС]
Поясните пожалуйста какую роль здесь играет звездочка? char *p = strtok(sen2, DELIM)
0
Freelance
Эксперт С++
 Аватар для asics
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
15.12.2010, 17:23
Костяныч, Почитай про функцию strtok() и сразу все поймеш.
0
20 / 20 / 4
Регистрация: 31.10.2010
Сообщений: 1,240
Записей в блоге: 2
15.12.2010, 18:06  [ТС]
Ааа понял...что значит DELIM в этой функции? И самый последний вопрос:если я считываю с файла текст к примеру f=fopen("data.txt","r") , как мне этот текст засунуть в массив, чтобы перейти к коду, который ты написал?
0
20 / 20 / 4
Регистрация: 31.10.2010
Сообщений: 1,240
Записей в блоге: 2
17.12.2010, 18:02  [ТС]
А почему у меня только два первых слова отображаются и все?
0
Freelance
Эксперт С++
 Аватар для asics
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
17.12.2010, 18:07
Костяныч, Незнаю, у меня даный код работает.
Миниатюры
По одному слову поочередно из каждой строки записать в третью  
0
20 / 20 / 4
Регистрация: 31.10.2010
Сообщений: 1,240
Записей в блоге: 2
20.12.2010, 19:30  [ТС]
Да все работает))))Я эту программу приспособил под файлы...считывает с двух файлов, записывает в третий...выдает ерунду, почему?
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
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <locale.h>
 
#define DELIM " \n\t;:,.!?"
int main()
{
    FILE *f1;
        f1= fopen("Text1.txt","r");
    FILE *f2;
        f2= fopen("Text2.txt","r");
    FILE *f3;
        f3= fopen("Text3.txt","w");
    char pr1[100],pr2[100],*pr3[20];
    int j=0,all=0;
    fscanf(f1,"%s",&pr1);
    fscanf(f2,"%s",&pr2);
    for(char *p=strtok(pr1,DELIM); p; p=strtok(NULL, DELIM))
    {
         pr3[j]=p;
         j+=2;
         ++all;
    }
    j=1;
    for(char *p=strtok(pr2,DELIM); p;p=strtok(NULL, DELIM))
    {
         pr3[j]=p;
         j+=2;
         ++all;
    }
    for(int i=0;i<all;i++)
    {
        printf("%s ",pr3[i]);
    }
    fprintf(f3,"%s ",pr3);
    fclose(f3);
    fclose(f2);
    fclose(f1);
   _getch();
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
20.12.2010, 19:30
Помогаю со студенческими работами здесь

Ошибка в программе, которая печатает содержимое своего ввода, помещая по одному слову на каждой строке
#include &lt;stdio.h&gt; #define within 1 /*внутри слова*/ #define outside 0 /*снаружи слова*/ int main(void) { int position = outside;...

Записать в файл поочередно по две строки из двух других файлов
В редакторе создайте 2 текстовых файла, внесите в первый файл 10 строк произвольноготекста и во второй 5. Из двух исходных файлов при...

В третью строку массива записать сумму элементов первой и второй строки
Помогите пожалуйста. Массив размера 3х3. В третью строку записать сумму элементов первой и второй строки.

Получить третью матрицу путём умножения элемента каждой строки первой на наибольший элемент второй
Задача. Даны две матрицы N-ого порядка(сиречь двумерные массивы=)), получить третью матрицу путём умножения элемента каждой строки...

Вывод по одному слову на строке
Доброго времени суток! Задача: написать программу, которая печатает содержимое своего ввода, помещая по одному слову на строке. Написал...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru