Какая допущена ошибка? - C (СИ)

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

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

# include < string.h >
# include <stdio.h  >
# include <conio.h >
# include <locale.h>
# define m 30
# define n 9
int main()
{
    int  i, j = 0, x;
    char A[m][n], B[m][n], c = 's', st[] = "eeeee";
    printf("\n введи  последовательность ");
    i = 0;  while (c != '.') {
        scanf_s("%[^,.] ", &A[i]); scanf_s("%c ", &c); i++;
    }
    for (i = x, i = 0; i < x; i++)
        if (strstr(A[i], st) != NULL)
        {
            B[j] = A[i]; j++; /* <--- */
        }
 
    printf("\n ");
    for (x=j, j=0;  j<x ; j++)
        printf(" %s  ", B[j]);
    _getch();
    return 0;
}

Решение задачи: «Какая допущена ошибка?»

textual
Листинг программы
# include < string.h >
# include <stdio.h  >
# include <conio.h >
# include <locale.h>
# define m 30
# define n 9
int main()
{
    setlocale(LC_ALL, "Rus");
    int  i, j = 0, x;
    char A[m][n], B[m][n], c = 's', st[] = "eeeee";
    printf("\n Bведи  последовательность ");
    i = 0;  while (c != '.') {
        scanf_s("%[^,.] ", &A[i], 9); scanf_s("%c ", &c); i++;
    }
    printf("\n ");
    for (x = i, i = 0; i <= x; i++)
        if (strstr(A[i], st) != NULL) {
            strcpy_s(B[j], A[i]); j++;
        }
    if (B[0]=="") printf("%d", j); else {
    for (x = j, j = 0; j < x; j++)
        printf("%s ", B[j]);
}
    _getch();
    return 0;
}

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

  1. Включаем необходимые заголовочные файлы.
  2. Определяем размеры массивов m и n.
  3. Устанавливаем локальную настройку на русский язык.
  4. Объявляем переменные i, j, x, A, B, c, st.
  5. Выводим сообщение для ввода последовательности.
  6. Используем цикл while для считывания последовательности и остановки при вводе точки.
  7. Используем цикл for для перебора массива A и проверки наличия подстроки eeeee.
  8. Если подстрока найдена, копируем соответствующий элемент массива A в массив B и увеличиваем счетчик j.
  9. Проверяем, пуст ли первый элемент массива B, и выводим его номер, если не пуст.
  10. Если первый элемент массива B не пуст, используем цикл for для перебора элементов массива B и их вывода.
  11. Используем функцию _getch() для приостановки выполнения программы до нажатия клавиши.
  12. Возвращаем 0, чтобы указать, что программа успешно завершилась.

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


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

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

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