Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.11.2013, 18:07   #1
slava5170
Пользователь
 
Регистрация: 01.12.2010
Сообщений: 10
По умолчанию азаработать программу Подсчета числа символов указанного типа в любой заданной строке символов .

Разаработать программу Подсчета числа символов указанного типа в любой заданной строке символов . Строка поиска и произвольный символ требуемого типа должны передовать программе через два аргумента командной строки ее вызова
Код:
#include <string.h>

int main (int argc, char* argv[])
{
    int i=1;
    char* a=argv[1]
    while (++i<argc)
    {
         
          
    }
    return n
}
Помогите с поиском числа элементов плз
Я думаю надо использовать strchr но не знаю как установить счетчик на элементы
slava5170 вне форума Ответить с цитированием
Старый 01.11.2013, 18:43   #2
Igor95
Форумчанин
 
Регистрация: 03.01.2013
Сообщений: 388
По умолчанию

Зачем?
Вот алгоритм:
Строка: char *str;
пока не конец строки (str) , если str[i] == ' [искомый символ] ', то увеличиваем счетчик количества символов равных искомому.

В Вашем случае:
Код:
int _counter;
for (_counter = 0, int i = 0;argv[0][i] != '\n'; ++i)
{
      if (argv[0][i] == *argv[1])
         ++_counter;
}
std::cout << "Counter equals: " << _counter << std::endl;

Последний раз редактировалось Igor95; 01.11.2013 в 18:50.
Igor95 вне форума Ответить с цитированием
Старый 01.11.2013, 18:48   #3
slava5170
Пользователь
 
Регистрация: 01.12.2010
Сообщений: 10
По умолчанию

а можно на си код

Последний раз редактировалось slava5170; 01.11.2013 в 18:55.
slava5170 вне форума Ответить с цитированием
Старый 02.11.2013, 21:37   #4
БалаШагаЛ
Форумчанин
 
Регистрация: 11.02.2011
Сообщений: 131
По умолчанию

На C то же самое будет, только вывод по другому.
Код:
#include <stdio.h>
...
int get_count(char *t,char c)
{
int r;
for(char *n=t;*n;++n)
  if (*n==c)
    r++;
return r;
}
...
int main()
{
...
printf("Count equals: %d",get_count(t,c));
...
}
БалаШагаЛ вне форума Ответить с цитированием
Старый 03.11.2013, 02:18   #5
Igor95
Форумчанин
 
Регистрация: 03.01.2013
Сообщений: 388
По умолчанию

Цитата:
Сообщение от БалаШагаЛ Посмотреть сообщение
На C то же самое будет, только вывод по другому.
Код:
#include <stdio.h>
...
int get_count(char *t,char c)
{
int r;
for(char *n=t;*n;++n)
  if (*n==c)
    r++;
return r;
}
...
int main()
{
...
printf("Count equals: %d",get_count(t,c));
...
}
В чистом C нет операторов инкремента.
Igor95 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
в заданной строке символов (отдельные слова, разделенные пробелом) найти слова с совпадающими первой и последней буквами (С++) T_h_i_s Помощь студентам 0 19.11.2012 18:37
Составить программу, проверяющую своевременность закрытия скобок () в строке символов Proskurina Помощь студентам 3 02.11.2012 21:59
подсчет числа комбинации символов 'ab' во входном потоке символов (Си) skrappy_kokko Помощь студентам 4 14.09.2011 23:10
функция для подсчета количества символов в строке типа std::string a Артэс Общие вопросы C/C++ 3 06.07.2009 17:43
В заданной строке символов заменить все первые буквы слов на заглавные NV-salt Общие вопросы C/C++ 4 05.04.2009 18:41