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

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

Войти
Регистрация
Восстановить пароль
 
verena-12358
1 / 1 / 0
Регистрация: 12.10.2011
Сообщений: 165
#1

Программа, объединяющая две строки и проверяющая размер первой - C++

24.03.2012, 17:52. Просмотров 465. Ответов 9
Метки нет (Все метки)

Напишите программу, объединяющую две строки и прове-ряющую размер первой.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.03.2012, 17:52     Программа, объединяющая две строки и проверяющая размер первой
Посмотрите здесь:

программа проверяющая принадлежит ли треугольник ABC кругу радиуса R C++
C++ Программа пропускает ввод первой строки
C++ простая программа, проверяющая вводимое число
C++ Строки. Определить местоположение символа первой строки, который первым совпал с одним из символов второй
C++ Определить местоположение символа первой строки, который первым не совпал с одним из символов второй строки
Программа проверяющая тесты C++
C++ Программа, проверяющая принадлежность точки к данному графику
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
eji
117 / 117 / 6
Регистрация: 17.09.2010
Сообщений: 288
24.03.2012, 18:40     Программа, объединяющая две строки и проверяющая размер первой #2
verena-12358, код:
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 <iostream>
#include <locale.h>
 
using namespace std;
 
int main()
{
    setlocale(0, "");
    cout << "Two strings"
         << endl;
    const int strs_size = 40;
    const int d_str_size = 80;
    char str1[strs_size], str2[strs_size], str3[d_str_size];
    cout << "Введите первую строку: ";
    cin.getline(str1, strs_size);
    cout << "Введите вторую строку: ";
    cin.getline(str2, strs_size);
    strcat(str3, str1);
    strcat(str3, str2);
    int lenght = 0;
    for(int i = 0; str1[i] != '\0'; i++)
    {
        lenght++;
    }
    cout << "Строка: "
         << str3
         << endl
         << "Длина первой строки: "
         << lenght
         << endl;
    system("pause");
    return 0;
}
go
Эксперт C++
3584 / 1364 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
24.03.2012, 18:46     Программа, объединяющая две строки и проверяющая размер первой #3
eji, вариант с strncat побезопасней будет
eji
117 / 117 / 6
Регистрация: 17.09.2010
Сообщений: 288
24.03.2012, 18:55     Программа, объединяющая две строки и проверяющая размер первой #4
go, прокомметируйте, пожалуйста.
go
Эксперт C++
3584 / 1364 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
24.03.2012, 18:59     Программа, объединяющая две строки и проверяющая размер первой #5
eji, защита от переполнения буфера назначения.
eji
117 / 117 / 6
Регистрация: 17.09.2010
Сообщений: 288
24.03.2012, 19:04     Программа, объединяющая две строки и проверяющая размер первой #6
go, странно, Шилдт ничего подобного не написал.
verena-12358
1 / 1 / 0
Регистрация: 12.10.2011
Сообщений: 165
24.03.2012, 20:37  [ТС]     Программа, объединяющая две строки и проверяющая размер первой #7
этот код не работает
panicwassano
591 / 559 / 20
Регистрация: 07.11.2010
Сообщений: 2,004
24.03.2012, 20:39     Программа, объединяющая две строки и проверяющая размер первой #8
Цитата Сообщение от eji Посмотреть сообщение
go, странно, Шилдт ничего подобного не написал.
шилдт то не писал, но вот мейерс или саттер (точно не помню) про это упоминали
zss
Модератор
Эксперт С++
 Аватар для zss
6113 / 5716 / 1849
Регистрация: 18.12.2011
Сообщений: 14,607
Завершенные тесты: 1
24.03.2012, 20:44     Программа, объединяющая две строки и проверяющая размер первой #9
перед strcat() str3 надо сделать пустой, например так
str3[0]=0;
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.03.2012, 00:00     Программа, объединяющая две строки и проверяющая размер первой
Еще ссылки по теме:

При расширении первой строки двумерного массива (с помощью realloc) программа вылетает C++
Поменять местами две средние строки матрицы с первой и последней C++
После ввода первой строки программа дает ошибку и закрывается C++
C++ Даны две последовательности , выяснить,является ли вторая последовательность подпоследовательностью первой
Программа, проверяющая, можно ли введенное с клавиатуры слово составить из букв исходного слова C++

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

Или воспользуйтесь поиском по форуму:
LVV
56 / 56 / 3
Регистрация: 15.02.2010
Сообщений: 241
25.03.2012, 00:00     Программа, объединяющая две строки и проверяющая размер первой #10
А если так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <string>
#include <iostream>
using namespace std;
int main()
{
    string s1, s2, s3;
cout << "vvedite pervyu stroky: ";
    getline(cin, s1);
cout << "vvedite vtoryu stroky: ";
    getline(cin, s2);
s3=s1+s2;
cout << "obyedinennaya stroka: "
        << s3 << endl;
cout << "dlina pervoy stroki ravna: " 
        << s1.length() << endl;
system ("pause");
return 0;
}
а если гарантировано, что в строке не будет пробелов и табуляции, то и вообще можно:
C++
1
2
3
4
5
..........
cin >> s1;
cin >> s2;
s3=s1+s2;
..........
Добавлено через 15 минут
eji. При выводе кирилицы Ваша программа выведет абракадабру, поскольку перед выводом строк, введённых с консоли следует снова переключить кодировку: setlocale(0,".OCP");
Yandex
Объявления
25.03.2012, 00:00     Программа, объединяющая две строки и проверяющая размер первой
Ответ Создать тему
Опции темы

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