Подскажите, где ошибка - C (СИ) (157073)
Формулировка задачи:
Нужно посчитать количество повторений каждой буквы в произвольно введенном английском тексте и вывести. Написал код, но что-то намудрил в цикле да и с { } скобками у меня проблемы, не понимаю где их нужно ставить... Знатоки, помогите, пожалуйста, разобраться в программе...
Листинг программы
- #include <stdlib.h>
- #include <string.h>
- #include <stdio.h>
- #include <conio.h>
- void main()
- {
- char symb[27]={'a','b','c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'u', 'v', 'w', 'x', 'y', 'z'} ;
- float numb[100];
- char s1[100];
- printf ("введите текст: \n");
- gets(s1);
- int k, i, j;
- k=0;
- for (j=0; j<=25; j++)
- for (i=0; i<=strlen(s1); i++)
- {
- if (s1[i] == char(97+j))
- k++;
- numb[i] = k;
- }
- printf("%s", symb[27]);
- for (i=0; i<=strlen(s1); i++)
- printf("%d", numb[i]);
- getch();
- }
Решение задачи: «Подскажите, где ошибка»
textual
Листинг программы
- #include <stdio.h>
- #include <ctype.h>
- #include <conio.h>
- void main()
- {
- int counts[26] = { 0 };
- int i;
- char ch;
- while ((ch = getchar()) != '\n')
- if (isalpha(ch))
- counts[tolower(ch) - 'a']++;
- for (i = 0; i < 26; i++)
- printf("%c: %d\n", i + 'a', counts[i]);
- getch();
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д