Найти количество буквенных и численных выражений в строке - C (СИ)

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

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

Дана строка не содержащая пробелов..найти количество буквенных и численных выражений...Например qwe121sdddc -2 буквенных и одно цифровое..., без процедур и функций...нужна помощь
#include<conio.h>
#include<stdio.h>
#include<string.h>
const t='0123456789';
int main()
{
 int n,i,bukv1,chisel,group;
 printf("Vvedite maksimalnoe koli4estvo simvolov v texte: ");
 scanf("%i",&n);
 char text[n];
 printf("Vvedite text: ");
 scanf("%s",&text);
 group=0;
 bukv1=0;
 i=0;
 while (i<strlen(text))
 {
  if ((text[i]>='a') && (text[i]<='z') && (text[i+1]=t))
  {
 
  group++;

  }
i++;
}
 
 printf("group bykv: %d",group);
}
написал примерно..не знаю..посмотрите

Решение задачи: «Найти количество буквенных и численных выражений в строке»

textual
Листинг программы
#include<stdio.h>
#include<string.h>
#define DIGIT " 0123456789\t\n"
#define ABC " qwertyuioplkjhgfdsazxcvbnm\t\n"
int main()
{
    int word = 0, num = 0;
    char text[BUFSIZ] = "sds344sdd33ads";
    char *p;
    char *t  = strdup (text);
     
     for ( p = strtok (text, ABC) ; p ; p = strtok (NULL, ABC) )
       ++num;
  
     for ( p = strtok (t, DIGIT) ; p ; p = strtok (NULL, DIGIT) )
       ++word;
 
 
   printf (" Count_word = %d \t Count_dig = %d ", word, num);
}

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

В этом коде выполняется подсчет количества буквенных и численных выражений в строке.

  1. Создаются две константы: DIGIT и ABC. DIGIT содержит все числовые значения, а ABC содержит все буквенные значения.
  2. Инициализируется переменная text, которая содержит исходную строку.
  3. Создается дубликат строки text с помощью функции strdup, который затем присваивается переменной t. Это делается для того, чтобы исходная строка осталась неизменной.
  4. В цикле for с помощью функции strtok происходит разделение строки на части по заданным критериям (буквенные или числовые). Функция strtok возвращает указатель на первую часть (слово), и после каждого вызова функции strtok необходимо передать NULL и критерий, чтобы перейти к следующему слову.
  5. Увеличивается счетчик, если текущая часть является числовой или буквенной.
  6. Выводится количество найденных буквенных и числовых выражений.

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


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

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

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