Вычеркнуть i-ю букву слова, вывести полученное слово - C (СИ)

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

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

Дано слово. Вычеркнуть i-ю букву слова, вывести полученное слово.

Решение задачи: «Вычеркнуть i-ю букву слова, вывести полученное слово»

textual
Листинг программы
#include <stdio.h>
#include <string.h>
 
int main(void)
{
    char word[40], *ptr;
    int n;
    
    printf("word: ");
    scanf("%s", word);
    printf("number: ");
    scanf("%i", &n);
    if (n < strlen(word)) {
        memcpy(word+n-1, ptr = word+n, strlen(ptr));
        puts(word);
    }
    return 0;
}

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

В этом коде:

  1. Объявлены две переменные: word типа char и n типа int.
  2. Переменная word инициализируется как массив символов, способный хранить 40 символов.
  3. Переменная n инициализируется как 0.
  4. Выводится сообщение word: и пользователю предлагается ввести строку.
  5. С помощью функции scanf введенная строка сохраняется в переменной word.
  6. Выводится сообщение number: и пользователю предлагается ввести число.
  7. Введенное число сохраняется в переменной n.
  8. Проверяется, что введенное число меньше длины строки в переменной word.
  9. Если условие выполняется, то с помощью функции memcpy изменяется содержимое строки word.
  10. Получаем указатель на символ, который должен быть заменен, и копируем все символы после него в новое место.
  11. Удаляем символ, который должен быть заменен.
  12. Выводим измененную строку.
  13. Возвращаем 0, чтобы указать, что программа успешно завершилась.

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


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

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

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