0 / 0 / 2
Регистрация: 04.03.2015
Сообщений: 28
1

Массив. Программа, подсчитывающая по отдельности цифры и символы

16.03.2015, 17:19. Показов 1769. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Изучал язык Си по книге "Язык программирования С", которую написал Брайан Карниган. Цитирую:

Цитата Сообщение от Брайан Карниган
А теперь напишем программу, подсчитывающую по отдельности каждую цифру, символы-разделители
(пробелы, табуляции и новые-строки) и все другие символы. Это несколько искусственная программа, но она
позволит нам в одном примере продемонстрировать еще несколько возможностей языка Си. Имеется
двенадцать категорий вводимых символов. Удобно все десять счетчиков цифр хранить в массиве, а не в виде
десяти отдельных переменных. Вот один из вариантов этой программы:
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>
/* подсчет цифр, символов-разделителей и прочих символов */
main()
{
int с, i, nwhite, nother;
int ndigit[10];
nwhite = nother = 0;
for (i = 0; i < 10; ++i)
ndigit[i]= 0;
while ((c = getchar()) != EOF)
if (c >= '0' && с <= '9' )
++ndigit[c - '0' ];
else if (c == ' ' || с == '\n' || с == '\t')
++nwhite;
else
++nother;
printf ("цифры =");
for (i=0; i < 10; ++i)
printf(" %d", ndigit[i]);
printf (", символы-разделители = %d, прочие = %d\n", nwhite, nother);
}
Так как я использую компилятор C++ (а он не поддерживает int по умолчанию), то мне пришлось заменить соответственно:
C
1
main()
На:
C++
1
int _tmain(int argc, _TCHAR* argv[])
При компиляции данной чудо программы, программа-компилятор выдала мне ошибку C2065:
Цитата Сообщение от Ошибка C2065
"идентификатор": необъявленный идентификатор
Перед использованием переменной необходимо указать ее тип в объявлении. Перед вызовом функции следует задать используемые в ней параметры в объявлении или прототипе.
Возможные причины:
При компиляции с использованием отладочной версии среды выполнения C в цикле for объявляется переменная-итератор из стандартной библиотеки C++. После этого выполняется попытка использования этой переменной вне цикла for. При компиляции кода стандартной библиотеки C++ с использованием отладочной версии среды выполнения C подразумевается установка параметра /Zc:forScope. Дополнительные сведения см. в разделе Поддержка итераторов отладки.
Выполняется вызов функции в файле заголовка SDK, которая не поддерживается в среде построения.
Не указаны необходимые файлы include (особенно при определении параметров VC_EXTRALEAN, WIN32_LEAN_AND_MEAN или WIN32_EXTRA_LEAN). Эти символы позволяют исключить некоторые файлы заголовка из файлов windows.h и afxv_w32.h, что позволяет ускорить процесс компиляции. (Актуальное описание исключаемых файлов см. в файлах windows.h и afxv_w32.h.)
Ошибка в написании имени идентификатора.
Ошибка при использовании строчных и прописных букв в имени идентификатора.
Отсутствует закрывающая кавычка после строковой константы.
Недопустимое пространство имен. Для разрешения функций и операторов стандартной библиотеки ANSI C++ следует указать пространство имен std с помощью директивы using. В следующем примере возникает ошибка компиляции, поскольку в нем закомментирована директива using, и определена функция cout, содержащаяся в пространстве имен std:
Помогите, пожалуйста, разобраться в чём дело. Хочется действительно чему-то научиться и в будущем применять это на практике.
P.S. Я использую компилятор Microsoft Visual C++ 2008.
Миниатюры
Массив. Программа, подсчитывающая по отдельности цифры и символы  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.03.2015, 17:19
Ответы с готовыми решениями:

Подсчитать по отдельности каждую цифру, символы-разделители и другие символы (нужны комментарии)
/*подсчитывающую по отдельности каждую цифру, символы-разделители (пробелы, табуляции и новые...

Программа, преобразующая символы(цифры) в число
Добрый день! Изучаю книгу Страуструпа для начинающих. Не получается написать нормальный код для...

Преобразовать массив следующим образом: сначала должны стоять цифры, входящие в массив, а затем все остальные символы
помогите пожайлуста с задачей. Задан массив из k символов. Преобразовать массив следующим...

из заданного теста выбрать цифры и записать в массив N ,а буквы - в массив B .Все остальные символы записать в массив S
Привет всем.Помогиет пожалуйста решить задачку из заданного теста выбрать цифры и записать в...

2
0 / 0 / 2
Регистрация: 04.03.2015
Сообщений: 28
17.03.2015, 01:05  [ТС] 2
ап.
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
17.03.2015, 01:16 3
andthenhesilenc, некоторые "c" - русские
2
17.03.2015, 01:16
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.03.2015, 01:16
Помогаю со студенческими работами здесь

Из заданного текста выбрать цифры и записать в массив N, а буквы- в массив B. Все остальные символы записать в массив S
подскажите как делать Из заданного текста выбрать цифры и записать в массив N, а буквы- в массив...

Программа подсчитывающая кол-во чисел
написать программу которая подсчитывает количество нечетных,отрицательных чисел в...

Программа на Java, подсчитывающая значение n!
Задание 1. Напишите программу, которая подсчитывает значение n! Задание 2. Опишите основные плюсы...

Программа, подсчитывающая сумму из выбранных элементов
Доброго времени суток, уважаемые форумчане. Пишу с просьбой о помощи в реализации программы,...

программа подсчитывающая число повторения в тексте
Доброго времени суток! Уважаемые участники форума, возникла следующая проблема: к данной задаче...

Вывести только не четные цифры и их сумму по отдельности
2) Вывести только не четные цифры и их сумму по отдельности, алгоритм от 0 до 10


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru