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

Строки - C++

Восстановить пароль Регистрация
 
4atty
 Аватар для 4atty
45 / 45 / 1
Регистрация: 09.06.2011
Сообщений: 117
04.07.2011, 16:04     Строки #1
Пользователь вводит две строки
Например:
1) Вася
2) Петя

Программа должна вывести первую букву первого слова затем первую второго слова и так далее.
Пример: ВПаестяя

Помогите
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.07.2011, 16:04     Строки
Посмотрите здесь:

Дан безразмерный массив.Вставить количество символов каждой строки вначало этой же строки. C++
C++ Вывести строки файла, после строки добавляя, сколько раз в ней встретилось слово
C++ Вывести на экран все строки данного массива одну за другой в виде целой строки
Как сделать так, что бы длинна строки сама менялась при вводе строки? C++
C++ Переместить вниз строки массива, в которых сумма элементов строки меньше ноля
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
-=ЮрА=-
Заблокирован
Автор FAQ
04.07.2011, 16:49     Строки #2
Вот простенькая реализация задачи
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
#include <iostream.h> 
#include <string.h>//прототип strlen
 
//Руссификация
ostream& operator<<(ostream &stream,char* s){
    for(char* ps=s; *ps; ps++){
        if(*ps=='ё')
            stream<<char(241);
        else if(*ps=='Ё')
            stream<<char(240);
        else if(*ps>=-64 && *ps<=-17)           
            stream<<char(*ps+64+128);
        else if(*ps<0)
            stream<<char(*ps+64+176);
        else
            stream<<*ps;
    }
    return stream;
}
 
 
int main()
{
    char string1[16];
    char string2[16];
    
    cout<<"Введите 1-ую строку (не более 16-ти сuмволов)\r\n\t>";
    cin>>string1;
    cout<<"Введите 2-ую строку (не более 16-ти сuмволов)\r\n\t>";
    cin>>string2;
    int sLen = strlen(string1);
    for(int i = 0; i < sLen; i++)
    {
        if(i < sLen - 1)
            cout<<string1[i]<<string2[i + 1];
        else
            cout<<string1[i]<<string2[0];
    }
    cout<<"\r\n";
    //Приостанавливаем выполнение программы
    cout<<"Press any key to contnue\r\n";
    char chr;cin>>chr;
    return 0;
}
Миниатюры
Строки  
-=ЮрА=-
Заблокирован
Автор FAQ
04.07.2011, 16:52     Строки #3
Заработался реализовал алгоритм 1-ая в первом, 2-ая во втором, типа наискось, вот код 1-ая к 1-й
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
#include <iostream.h> 
#include <string.h>//прототип strlen
 
//Руссификация
ostream& operator<<(ostream &stream,char* s){
    for(char* ps=s; *ps; ps++){
        if(*ps=='ё')
            stream<<char(241);
        else if(*ps=='Ё')
            stream<<char(240);
        else if(*ps>=-64 && *ps<=-17)           
            stream<<char(*ps+64+128);
        else if(*ps<0)
            stream<<char(*ps+64+176);
        else
            stream<<*ps;
    }
    return stream;
}
 
 
int main()
{
    char string1[16];
    char string2[16];
    
    cout<<"Введите 1-ую строку (не более 16-ти сuмволов)\r\n\t>";
    cin>>string1;
    cout<<"Введите 2-ую строку (не более 16-ти сuмволов)\r\n\t>";
    cin>>string2;
    int sLen = strlen(string1);
    for(int i = 0; i < sLen; i++)
        cout<<string1[i]<<string2[i];
    cout<<"\r\n";
    //Приостанавливаем выполнение программы
    cout<<"Press any key to contnue\r\n";
    char chr;cin>>chr;
    return 0;
}
Миниатюры
Строки  
CEBEP
105 / 105 / 9
Регистрация: 21.03.2010
Сообщений: 437
04.07.2011, 16:59     Строки #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
 
int main()
{
    setlocale( LC_ALL, "Russian" );
 
    char buf[2][200];
    std::cout << "Введите строку 1: ";
    std::cin >> buf[0];
    std::cout << "Введите строку 2: ";
    std::cin >> buf[1];
 
    int i = 0;
    while(buf[0][i] && buf[1][i])
        std::cout << buf[0][i] << buf[1][i],++i;
    //выводим обрезок если он остался...
    std::cout << &buf[0][i] << &buf[1][i];
 
    std::cout << std::endl;
    return 0;
}
Mиxaил
 Аватар для Mиxaил
530 / 435 / 37
Регистрация: 10.12.2009
Сообщений: 1,857
04.07.2011, 17:12     Строки #5
-=ЮрА=-,
C++
1
#include <cstring>
так лучше будет смотреться!
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
04.07.2011, 17:43     Строки #6
Цитата Сообщение от Mиxaил Посмотреть сообщение
так лучше будет смотреться
Чем лучше ? По хедерах видно что компилятор от Борланда, следовательно такая(без разширения) запись не канает.
Yandex
Объявления
04.07.2011, 17:43     Строки
Ответ Создать тему
Опции темы

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