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

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

Войти
Регистрация
Восстановить пароль
 
83snake
0 / 0 / 0
Регистрация: 06.04.2009
Сообщений: 30
#1

Строки немогу найти решения или нехватает литературы чтоб самому разобраться - C++

07.04.2009, 15:31. Просмотров 845. Ответов 5

подскажите пожалуйста как решить эти задачи методом для начинающего или где можно взять литературу по строкам
пожалуйста
заранее благодарен

1.Дана строка. Заменить в строке все большые буквы на маленькие и наоборот.

2.Написать функцию, которая получает строку и возвращает длину строки. Без использования функции strlen()

3.Дана строка. Удалить из строки заданный символ. Результат разместить в новой строке.

4.Дано целое число. Найти количество цифр числа, сумму цифр числа и реверс числа *2. Использовать библиотечные функции itoa(), strrev(), atoi().

5. Задан строка, состоящая из символов. Символы сочетаются в слова. Слова отделяются одним или несколькими пробелами. В конце текста ставится точка. Текст содержит не более 255 символов.

Написать следующие функции для работы с переданной строкой:

-Напечатать все слова, которые не содержат гласных букв.
-Напечатать все слова, содержащие цифры.
-Выбрать в отдельном массиве все цифры, отсортировать их по убыванию.
-Определить, какое слово встречается в строке чаще всего.
-Отсортировать все слова в алфавитном порядке
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.04.2009, 15:31
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Строки немогу найти решения или нехватает литературы чтоб самому разобраться (C++):

без знаковый double. Если ли чтоб можно было в шаблон пихать или самому сделать придется ? - C++
сабжж

Немогу разобраться - C++
Нужно записать в файл массив строк #include "stdafx.h" #include "iostream" #include <windows.h> #include <winbase.h> #include...

Немогу разобраться с условием - C++
Немогу разобраться с условием, помогите кто знает...

Немогу разобраться с кодом - C++
код писал не я, помогите пожалуйста разобраться.Я не могу понять за что отвечает та или иная переменная.Я знаю что это С а не С++,но в этой...

Немогу разобраться с директивами - C++
Люди есть проблема. (с++) Значит учусь я в универе. А там IDE у нас короче очень древняя борланд`овская (для win 3.1). Так как для изучения...

немогу разобраться с переменной C++ - C++
Объясните пожалуйста, вот есть переменные int, char, float и т.д а, в некоторых функциях есть параметр, для которого надо указать...

5
Mecid
680 / 229 / 4
Регистрация: 15.10.2007
Сообщений: 1,247
07.04.2009, 16:03 #2
и что не получается вроде легкие задания

Добавлено через 5 минут 50 секунд
1.смотришь если значения символа больше 90 отнимаешь 32,меньше прибавляешь
значение символов Большой и маленькой букы отличаются на 32
2.
C
1
 while(str!=NULL) ++count,++str;
Добавлено через 8 минут 34 секунды
3.
C
1
2
 for(i=0,n=strlen(str);i<n;++i)
 if(str[i]!=ch)newstr[i]=str[i];
1
YurA_280784
Заблокирован
07.04.2009, 16:18 #3
Вот что у меня вышло на первые 3 пункта, результат на скриншоте
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
52
53
54
55
56
57
58
59
#include <windows.h>
#include <stdio.h>
#include <conio.h>
 
char str[1024];
long   m_strlen(const char * str);
char * remupper(const char * str);
char * srplsmbl(const char * str, char ch);
 
void main()
{
    printf("Rabota so strokami\r\n");
    printf("Vvedite ishodnyu stroky\r\n");
    scanf("%s",&str);
    long sLen = m_strlen(str);
    printf("Dlinna stroki : %d\r\n",sLen);
    printf("Stroka posle zameni propisnih : %s\r\n",remupper(str));
    printf("Stroka posle zameni symvola a : %s\r\n",srplsmbl(str,'a'));
    //isupper
}
 
long m_strlen(const char * str)
{
    long nCount = -1;
    while(*str)
    {
        nCount++;
        *str++;
    }
    return nCount;
}
 
char * remupper(const char * str)
{
    int sLen = m_strlen(str);
    char * buf = new char[sLen];
    strcpy(buf,str);
    for(int i = 0; i < sLen; i++)
    {
        if(isupper(str[i]))
            buf[i] = tolower(str[i]);
    }
    return buf;
}
 
char * srplsmbl(const char * str, char ch)
{
    int sLen = m_strlen(str);
    char * buf = new char[sLen];
    for(int i = 0,j = 0; i < sLen; i++)
    {
        if(str[i] != ch)
        {
            buf[j] = str[i];j++;
        }
    }
    buf[j + 1] = '\0';
    return buf;
}
1
Миниатюры
Строки немогу найти решения или нехватает литературы чтоб самому разобраться  
Mecid
680 / 229 / 4
Регистрация: 15.10.2007
Сообщений: 1,247
07.04.2009, 16:40 #4
C
1
2
3
4
5
6
7
8
9
10
long m_strlen(const char * str)
{
        long nCount = -1;
        while(*str)
        {
                nCount++;
                *str++;
        }
        return nCount;
}
тут надо только инкрементировать str++,без разыменования
1
ISergey
Maniac
Эксперт С++
1376 / 887 / 53
Регистрация: 02.01.2009
Сообщений: 2,663
Записей в блоге: 1
07.04.2009, 16:53 #5
и вместо
C++
1
long nCount = -1;
нужно
C++
1
long nCount = 0;
1
Gravity
563 / 557 / 39
Регистрация: 29.01.2009
Сообщений: 1,274
07.04.2009, 17:14 #6
4.
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAXSTR 80
 
main()
{
    int i, n = 12345, ndigit, sumdigit;
    char s[MAXSTR];
    
    itoa(n, s, 10);
    ndigit = sumdigit = 0;
    for(i = 0; s[i] != '\0'; i++) {
       ndigit++;
       sumdigit += s[i] - '0';
    }
    itoa(n*2, s, 10);
    strrev(s);
    printf("Ndigit = %d\nSumdigit = %d\nReverse (n*2) = %s\n", ndigit, sumdigit, s);
    
    system("pause");
    return 0;
}
1
07.04.2009, 17:14
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.04.2009, 17:14
Привет! Вот еще темы с ответами:

Вот я создал фунцкцию...и немогу направить в менюшку чтоб она там работала!! - C++
я создал сортировку по возростанию функцией.........но немогу зделать чтоб она работала в меню!!!!Помогите пожалуйста хотябы по автору...

Немогу разобраться в строчке кода! - C++
Программисты помогите понять эту строку кода while(b) b^=a^=b^=a%=b; Что делает этот while? а и б обычные целые числа.

Простой пример, немогу разобраться - C++
(sinα)2+cos2α / a2/2-b7+k З.Ы. Прошу простить меня за корявое оформление( Помогите пожалуйста добрые люди решить.

Задача на строки, немогу разобраться - Pascal
В строке заданы через двоеточие 2 оператора присваивания общего вида: &quot;первый:=число1+число2:второй:=число3-число4&quot;...


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

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

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