Вывод номеров встречающихся букв во входном потоке - C (СИ)
Формулировка задачи:
В теме книги обсуждались указатели, но у меня они употреблены номинально и можно было обойтись без них. Можно ли более простой способ для решения данной задачи найти с применением указателей?
#include <stdio.h> void sign(char *a); int main(void) { char ch; while((ch = getchar()) != EOF) { sign(&ch); } return 0; } void sign(char *a) { int i = 0; char m[] = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz"; int k[] = {1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26}; if(*a >= 'A' && *a <= 'Z' || *a >= 'a' && *a <='z') { while(*a != m[i]) { ++i; } printf("%c - %d буква в алфавите\n", m[i], k[i]); } i = 0; }
Решение задачи: «Вывод номеров встречающихся букв во входном потоке»
textual
Листинг программы
//gcc 5.4.0 #include <stdio.h> int main(void) { for (int i='a'; i<'z'; i++) printf("%c = %d\n", i, i); return 0; }
Объяснение кода листинга программы
В этом коде используется цикл for для перебора всех букв от 'a' до 'z' (включительно). На каждой итерации цикла выводится сообщение в формате буква = число
, где буква — это текущее значение переменной i, а число — это значение этой же переменной i. Таким образом, программа выводит пары сообщений буква = число
для каждой буквы от 'a' до 'z'. Возвращаемое значение 0 оператором return означает успешный конец работы программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д