Вывод цифр, содержащихся в строке - C (СИ)

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

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

Здравствуйте, можете помочь перевести программу на строки, задание такое, нужно вводить в строку знаки,числа,буквы, а выводиться должны только цифры.
Var s,s1:string;
    i:byte;
Begin
    write('Ââåäèòå ñòðîêó: ');readln(s);
    s1:='';
    For i:=1 to Length(s) do
     if s[i] in ['0'..'9'] then s1:=s1+s[i]
      else
      Begin
        if s1<>'' then writeln(s1);
        s1:='';
      End;
    if s1<>'' then writeln(s1);
    readln;
End.

Решение задачи: «Вывод цифр, содержащихся в строке»

textual
Листинг программы
#include <ctype.h>
#include <stdio.h>
 
int main(void) {
 
    int i, n = 0;
    char s[256];
    char s1[256] = "";
 
    puts("Введите строку:");
    scanf("%255[^\n]", s);
 
    for(i = 0; s[i] != '\0'; ++i) {
 
        if(isdigit(s[i])) {
 
            s1[n] = s[i];
            s1[++n] = '\0';
        }
 
        else if(*s1) {
 
            puts(s1);
            *s1 = '\0';
            n = 0;
        }
    }
 
    if(*s1) puts(s1);
 
    return 0;
}

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

  1. Подключение необходимых библиотек: и .
  2. Объявление переменных:
    • int i - цикл.
    • n = 0 - счётчик для массива s1.
    • char s[256] - строка, которую вводит пользователь.
    • `char s1[256] = ``` - массив, в который будут добавляться цифры.
  3. Вывод сообщения с просьбой ввести строку.
  4. Считывание строки с помощью scanf(%255[^\n], s);.
  5. Проверка каждого символа в строке s.
  6. Если символ является цифрой, то он добавляется в массив s1.
  7. Если символ не является цифрой, но в массиве s1 уже есть символы, то выводится текущее значение массива s1 и его очистка для следующего добавления.
  8. Если символ не является цифрой и в массиве s1 нет символов, то ничего не происходит.
  9. После прохода по всем символам в строке, если в массиве s1 остались символы, то они выводятся на экран.
  10. Возврат 0, означающий успешный исход программы.

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


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

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

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