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

Определить длину строки и сколько раз встречается символ в строке - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Даны действительные числа a,b http://www.cyberforum.ru/cpp-beginners/thread988788.html
C++ проверки с++ Здравствуйте,помогите пожалуйста сделать проверки на пустые строки ,чтобы когда пользователь вводит enter сразу выдавалась ошибка,а то у меня получается так,что enter вводится до бесконечности #include "stdafx.h" #include <stdio.h> #include <iostream> #include <cstring> #include <locale> using namespace std; http://www.cyberforum.ru/cpp-beginners/thread988785.html
C++ задача на ошибки
помогите решить! В следующем фрагменте программы допущены ошибки. Исправить их и записать синтаксически фрагмент (все операторы в ответе поместить в одной строке): for (int i=0, x=1, i<n; i=2i) if x>10 break else x=x+i;
Динамические массивы типа vector и array C++
#include <iostream> #include <vector> #include <array> #include <string> using namespace std; int main() { const int num = 10; std::vector<string> vd(num);
C++ Даны натуральные числа m,n http://www.cyberforum.ru/cpp-beginners/thread988750.html
Даны натуральные числа m,n, действительные числа a1, a2,……….amn. Вычислить a1a2…am+am+1 am+2… a2m+a(n-1)m+1 a(n-1)m+2…amn
C++ VAL в С++ Подскажите, есть ли функция, аналог val(c, i, r) в паскале, и если да, то как она работает? подробнее

Показать сообщение отдельно
anmartex
...
 Аватар для anmartex
1700 / 1193 / 494
Регистрация: 12.02.2013
Сообщений: 1,978
27.10.2013, 12:41     Определить длину строки и сколько раз встречается символ в строке
Юлия Харченко, я конечно могу ошибаться, но мне кажется, что от вас требуют написание своих функций нежели использование встроенных. Хотя даже если использовать встроенные функции, то подсчёт нужно реализовывать самому:
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
#include <iostream>
#include <cstring>
#include <cstdlib>
 
unsigned ChrCount(char text[], const char ch)
{
    unsigned count = 0;
 
    while ((text = strchr(text, ch)))
    {
        text++;
        count++;
    }
 
    return count;
}
 
int main()
{
    char text[] = "Hello World";
    char ch = 'l';
 
    std::cout << "word: " << text << std::endl;
 
    std::cout << "length = " << strlen(text) << std::endl;
 
    std::cout << "char '" << ch << "' count = "
              << ChrCount(text, ch) << std::endl;
 
    std::cout << "string with first '" << ch << "': "
              << strchr(text, ch) << std::endl;
 
 
    system("pause");
 
    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
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
#include <iostream>
#include <cstdlib>
 
//-----------------------------------------------------------------------------
unsigned Length(const char text[])
{
    unsigned len = 0;
    while (*text++)
    {
        len++;
    }
 
    return len;
}
//-----------------------------------------------------------------------------
char* StrChr(char text[], const char ch)
{
    for (; *text && (*text != ch); ++text) { ; }
 
    return (*text ? text : NULL);
}
//-----------------------------------------------------------------------------
unsigned ChrCount(char text[], const char ch)
{
    unsigned count = 0;
 
    while ((text = StrChr(text, ch)))
    {
        count++;
        text++;
    }
 
    return count;
}
//-----------------------------------------------------------------------------
 
int main()
{
    char text[] = "Hello World";
    char ch = 'l';
 
    std::cout << "word: " << text << std::endl;
 
    std::cout << "length = " << Length(text) << std::endl;
 
    std::cout << "char '" << ch << "' count = "
              << ChrCount(text, ch) << std::endl;
 
    std::cout << "string with first '" << ch << "': "
              << StrChr(text, ch) << std::endl;
 
    system("pause");
 
    return 0;
}
 
Текущее время: 06:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru