Напечатать заданное не пустое предложение, удалив из него все цифры и удвоив знаки '+' и '-' - C (СИ)
Формулировка задачи:
Напечатать заданное не пустое предложение, удалив из него все цифры и удвоив знаки '+' и '-';
Решение задачи: «Напечатать заданное не пустое предложение, удалив из него все цифры и удвоив знаки '+' и '-'»
textual
Листинг программы
- #include <stdio.h>
- #include <string.h>
- main()
- {
- char s[200],c;
- int i,asc;
- puts("Enter string: ");
- gets(s);
- i=0;
- while(i<strlen(s))
- {
- c=s[i];
- asc=c;
- if(asc>=48&&asc<=57){}
- else
- {
- switch(asc)
- {
- case 45: printf("--");
- break;
- case 43: printf("++");
- break;
- default: printf("%c",c);
- break;
- }
- }
- i++;
- }
- }
Объяснение кода листинга программы
В этом коде пользователь вводит строку, и программа её печатает, удаляя все цифры и удваивая знаки '+' и '-'. Вот список действий, которые происходят в коде:
- Ввод строки с помощью функции
gets()
. - Инициализация счётчика
i
равным 0. - В цикле
while
происходит следующее:- Буква
c
сохраняется в переменнойc
. - Значение
asc
устанавливается равнымc
. - Если
asc
является числом (от 48 до 57), то происходит следующее: - В зависимости от значения
asc
, выводится либо двойной знак '+', либо двойной знак '-', либо сама буква. - Если
asc
не является числом, то выводится сама буква. i
увеличивается на 1.
- Буква
- Программа завершается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д