Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.61/18: Рейтинг темы: голосов - 18, средняя оценка - 4.61
16 / 16 / 1
Регистрация: 01.11.2009
Сообщений: 188
1

Вывести строку, содержащую те же символы, но расположенные в обратном порядке

12.11.2009, 16:16. Показов 3352. Ответов 10
Метки нет (Все метки)

Задача 1.
Дана строка. Вывести строку, содержащую те же символы, но расположенные в обратном порядке.

C
1
2
3
4
5
6
7
8
#include <stdio.h>
#include <math.h>
{
char str[10];
printf("tty");
gets (str)
return 0;
}
Да блин ваще не знаю как делать=((

Задача 2.
Даны строки S и S0. Удалить из строки S все подстроки, совпадающие с S0. Если совпадающих подстрок нет, то вывести строку S без изменений.

Задача 3.
Выделить и вывести на экран слова из предложения, заканчивающиеся на согласные буквы.


ПОМОГИТЕ!!!! ваще башка не варит=( СПАСИБО.
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.11.2009, 16:16
Ответы с готовыми решениями:

Дана строка. Вывести строку, содержащую те же символы, но расположенные в обратном порядке.
1. Дана строка. Вывести строку, содержащую те же символы, но расположенные в обратном порядке. ...

Вывести строку, содержащую те же символы, но расположенные в обратном порядке
Задано строку. Вывести строку, содержащую те же символы, но расположенные в обратном порядке.

Вывести строку, содержащую те же символы, но расположенные в обратном порядке
Дана строка. Вывести строку, содержащую те же символы, но расположенные в обратном порядке....

Вывести строку, содержащую те же символы, но расположенные в обратном порядке
Дана строка. Вывести строку, содержащую те же символы, но расположенные в обратном порядке.

10
32 / 30 / 6
Регистрация: 10.11.2009
Сообщений: 123
12.11.2009, 16:41 2
Цитата Сообщение от Romich41 Посмотреть сообщение
Задача 1.
Дана строка. Вывести строку, содержащую те же символы, но расположенные в обратном порядке.

C
1
2
3
4
5
6
7
8
#include <stdio.h>
#include <math.h>
{
char str[10];
printf("tty");
gets (str)
return 0;
}
Да блин ваще не знаю как делать=((


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
//---------------------------------------------------------------------------
 
void __fastcall TForm1::ButtonBenEndClick(TObject *Sender)
{
AnsiString BecEnd;
char tmp;
 
    //Edit6->Text = "neddd";
 
BecEnd = Edit1->Text;
 
    for(int i = 1; i <= BecEnd.Length()/2; i++)
    {
        tmp = BecEnd[i];
        BecEnd[i] = BecEnd[BecEnd.Length() - i + 1];
        BecEnd[BecEnd.Length() - i + 1] = tmp;
    }
 
Edit2->Text = BecEnd;
 
}
//--------------------------------------------------------------------------
Добавлено через 5 минут
Задача 2
читайте про ф-ции strcmp(),strncmp(),strnicmp() и прочие, там есть подходящие для вас
1
16 / 16 / 1
Регистрация: 01.11.2009
Сообщений: 188
12.11.2009, 17:39  [ТС] 3
мне надо написать на языке Си=)
0
424 / 228 / 87
Регистрация: 25.03.2009
Сообщений: 744
12.11.2009, 21:25 4
Romich41, переворот строки функция strrev если не ошибаюсь я на Си не пишу просто
1
32 / 30 / 6
Регистрация: 10.11.2009
Сообщений: 123
12.11.2009, 21:51 5
ой, извини..)
0
Заблокирован
12.11.2009, 22:15 6
Цитата Сообщение от Romich41 Посмотреть сообщение
мне надо написать на языке Си=)
C
1
2
3
4
5
6
7
8
9
10
11
#include <stdio.h>
#include <conio.h>
int main(){
    char *szS;
    int nNumSymb;
    gets(szS);
    for(nNumSymb=0;szS[nNumSymb];nNumSymb++);
    while(szS[--nNumSymb])
        putchar(szS[nNumSymb]);
    return 0;
}
может подойдет
1
16 / 16 / 1
Регистрация: 01.11.2009
Сообщений: 188
12.11.2009, 22:33  [ТС] 7
не пашет=(
0
424 / 228 / 87
Регистрация: 25.03.2009
Сообщений: 744
12.11.2009, 22:38 8
Romich41, ссылка удалена просвещайся)
1
16 / 16 / 1
Регистрация: 01.11.2009
Сообщений: 188
12.11.2009, 22:50  [ТС] 9
ну и что ...просвятился=) попробывал ....и....не пашел....у мя наверно руки не отдуда растут=(
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
11046 / 6993 / 1656
Регистрация: 25.07.2009
Сообщений: 12,763
13.11.2009, 02:01 10
Цитата Сообщение от Romich41 Посмотреть сообщение
Вывести строку, содержащую те же символы, но расположенные в обратном порядке.
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <stdio.h>
#include <string.h>
 
char *strReverse(char *s){
    char *head, *tail, c;
    if ( !s || !(*s) )
        return NULL;
    for ( head = s, tail = s + strlen(s) - 1; head < tail; head++, tail-- ){
        c = *head;
        *head = *tail;
        *tail = c;
    }
    return s;
}
 
int main(){
    char str[] = "abcdef";
    printf("Original: %s\n", str);
    printf("Reversed: %s\n", strReverse(str));
    return 0;
}
Добавлено через 48 минут
Цитата Сообщение от Romich41 Посмотреть сообщение
Выделить и вывести на экран слова из предложения, заканчивающиеся на согласные буквы.
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
45
46
47
48
49
50
51
#include <stdio.h>
#include <string.h>
#include <ctype.h>
 
#define STR_LEN 255
 
/* указатель на следующее слово в строке, или 0, если слова кончились */
char *nextWord(char *str){
        char *p;
        for ( p = str; *p != '\0' && !isspace(*p) && !ispunct(*p); p++ )
                ;
        if ( *p == '\0' )
                return NULL;
        while ( isspace(*p) || ispunct(*p) )
                p++;
        return ( *p == '\0' ) ? NULL : p;
}
 
/* 
*   возвращает одно слово из строки str в буфере wrd. динна wrd = len - 1
*   в случае неудачи вернёт NULL
*/
char *getWord(const char *str, char *wrd, size_t len){
    char *p;
    char *w;
    
    for ( p = (char *)str, w = wrd;  *p != '\0' && !isspace(*p) && !ispunct(*p) && --len > 0; p++, w++ )
        *w = *p;
    *w = '\0';
    
    return wrd;
}
 
int main(){
    char *str = "Jingle bells, jingle bells, jingle all the way! O what fun it is to ride In a one-horse open sleigh";
    char *consonants = "BbCcDdFfGgHhJjKkLlMmNnPpQqRrSsTtVvWwXxZz";
    char buf[STR_LEN];
    char *pStr;
    
    printf("\nOriginal:\n%s\n", str);
    
    printf("\nWith last letter consonant:\n");
    for ( pStr = str; pStr != NULL; pStr = nextWord(pStr) ) {
        getWord(pStr, buf, STR_LEN);
        if ( strchr(consonants, buf[strlen(buf) - 1]) )
            printf("%s ", buf);
    }
    putchar('\n');
    
    return 0;
}
1
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
11046 / 6993 / 1656
Регистрация: 25.07.2009
Сообщений: 12,763
13.11.2009, 16:40 11
Цитата Сообщение от Romich41 Посмотреть сообщение
Даны строки S и S0. Удалить из строки S все подстроки, совпадающие с S0. Если совпадающих подстрок нет, то вывести строку S без изменений.
Решение получилось какое-то сомнительное, но в качестве учебного примера, думаю, сойдёт...
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
#include <stdio.h>
#include <string.h>
    
/* возвращает строку str без подстрок cut */
char *cutFromStr(char *str, char *cut){
    char *pFrom, *pTo, *pFound, *pStrEnd;
    
    if ( !str || !(*str) || !cut || !(*cut) )
        return NULL;
    
    while ( (pFound = strstr(str, cut)) != NULL ){
        for ( pTo = pFound, pFrom = pFound + strlen(cut), pStrEnd = str + strlen(str);
            pFrom < pStrEnd; pTo++, pFrom++ )
                *pTo = *pFrom;
        *pTo = '\0';
    }
    
    return str;
}
 
int main(){
    char test_str[] = "abcdefg abcd cdef cde f defgh";
    char no_cut_str[] = "abcde fgh klmn";
    char *cut_str = "def";
    printf("\nOriginal: %s\n", test_str);
    printf("\nString to cut from: %s\n", cut_str);
    printf("\nAfter cutting: %s\n", cutFromStr(test_str, cut_str));
    putchar('\n');
    printf("\nOriginal: %s\n", no_cut_str);
    printf("\nString to cut from: %s\n", cut_str);
    printf("\nAfter cutting: %s\n", cutFromStr(no_cut_str, cut_str));
    
    return 0;
}
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.11.2009, 16:40

Вывести строку, содержащую те же символы, но расположенные в обратном порядке
Ввести строку. Вывести строку, содержащую те же символы, но расположенные в обратном порядке. (как...

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

Вывести строку, содержащую те же символы, но расположенные в обратном порядке.
Ввод и вывод строк осуществлять, используя функции gets и puts. При реализации программы ...

Вывести строку, содержащую те же символы, но расположенные в обратном порядке
Дана строка. Вывести строку, содержащую те же символы, но расположенные в обратном порядке.


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

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

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