Определить количество элементов массива, являющихся цифрами - C (СИ)
Формулировка задачи:
Вот такое было задание:Задан символьный массив размера N. Определить количество элементов
массива, являющихся цифрами.
Когда пытаюсь запустить вбиваю 1 символ и программа завершается, не знаю в чем дело =(
#include <stdio.h> int main(int argc, char *argv[]) { int N,k; printf("Vvedite kol-vo elementov: "); scanf("%d",&N); if(N<3) {printf("malo!\n"); return 0;} printf("Vvedite massiv: "); char arr[N]; for(int i=0;i<N;i++) scanf("%с",&arr[i]); for(int i=0;i<N;i++) if (arr[i]==0||1||2||3||4||5||6||7||8||9) k++; return k; }
Решение задачи: «Определить количество элементов массива, являющихся цифрами»
textual
Листинг программы
#include <stdio.h> #include <ctype.h> int main(int argc, char *argv[]) { printf("Vvedite N: \n"); int N; scanf ("%d", &N); char a[N+1]; int k = 0; for (int i = 0; i <= N; i++) { scanf ("%c", &a[i]); if (isdigit (a[i])) k++; } printf ("%d simvolov - eto tsifry", k); return 0; }
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с вводом/выводом и преобразованием символов.
- Ввод числа N с помощью функции scanf.
- Создание массива a динамического размера, равного N+1, с помощью оператора new.
- Инициализация переменной k, которая будет считать количество цифр.
- Запуск цикла for, который будет считывать каждый символ в массиве a до N.
- Проверка каждого символа с помощью функции isdigit, которая возвращает 1, если символ является цифрой.
- Если символ является цифрой, то увеличиваем значение переменной k на 1.
- Вывод сообщения с количеством цифр в массиве.
- Возвращение 0, что означает успешный конец работы программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д