Определить количество элементов массива, являющихся цифрами - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Вот такое было задание:Задан символьный массив размера N. Определить количество элементов массива, являющихся цифрами.
#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;
}
Когда пытаюсь запустить вбиваю 1 символ и программа завершается, не знаю в чем дело =(

Решение задачи: «Определить количество элементов массива, являющихся цифрами»

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;
}

Объяснение кода листинга программы

  1. Подключение необходимых библиотек для работы с вводом/выводом и преобразованием символов.
  2. Ввод числа N с помощью функции scanf.
  3. Создание массива a динамического размера, равного N+1, с помощью оператора new.
  4. Инициализация переменной k, которая будет считать количество цифр.
  5. Запуск цикла for, который будет считывать каждый символ в массиве a до N.
  6. Проверка каждого символа с помощью функции isdigit, которая возвращает 1, если символ является цифрой.
  7. Если символ является цифрой, то увеличиваем значение переменной k на 1.
  8. Вывод сообщения с количеством цифр в массиве.
  9. Возвращение 0, что означает успешный конец работы программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.6 из 5
Похожие ответы