Вывести на экран символы которые повторяются только один раз - C (СИ)
Формулировка задачи:
Задание, ввод символьной строки пользователем, задания:
1) вывести обрабатываемую строку на экран
2) вывести на экран символы которые повторяются только один раз, в последовательности как они были в строке
Программа должны быть написана в
Си
а не в С++ у меня по моему 1 задание сделано, надо второе, может кто помочь?#include <stdio.h> #include <conio.h> #include <windows.h> #include <string.h> #define N 800 int main() {//1 char text[N]; int sk; system("cls"); printf("Ievadiet simbolu virkni\n"); gets(text); system("cls"); printf("Ievadita virkne ir:\n"); puts(text); printf("\n"); system("pause"); }//1
Решение задачи: «Вывести на экран символы которые повторяются только один раз»
textual
Листинг программы
#include <stdio.h> #include <conio.h> #include <windows.h> #include <string.h> #define N 800 void Print(char *s) { int i, count[256] = {0}; for (; *s; s++) count[*s]++; for (i = 0; i < 256; i++) if (count[i] == 1) printf("%c\n", i); } int main() {//1 char text[N]; int sk; system("cls"); printf("Ievadiet simbolu virkni\n"); gets(text); system("cls"); printf("Ievadita virkne ir:\n"); puts(text); Print(text); printf("\n"); system("pause"); }//1
Объяснение кода листинга программы
Вывод повторяющихся символов:
- Включаем необходимые заголовочные файлы.
- Объявляем переменные:
N
- размер массиваtext
;text
- строка, в которой будем искать повторяющиеся символы;sk
- счётчик для цикла перебора символа.
- Выводим сообщение с просьбой ввести строку.
- Очищаем экран.
- Выводим введённую строку.
- Инициализируем счётчик повторяющихся символов.
- В цикле перебираем каждый символ в строке.
- Увеличиваем счётчик для текущего символа.
- Если счётчик для текущего символа равен 1, то выводим этот символ.
- Завершаем работу программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д