Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- #define LETTERS_AMOUNT ('z' - 'a')
- size_t *map_chars(char string[1000], size_t len);
- int main(void) {
- printf("Input string: ");
- char string[1000];
- scanf("%s", string);
- size_t *letters = map_chars(string, strlen(string));
- for (size_t i = 0; i < LETTERS_AMOUNT; i++) {
- if (letters[i]) {
- printf("%c: %zu\n", i + 'a', letters[i]);
- }
- }
- }
- size_t *map_chars(char string[1000], size_t len) {
- size_t *letters = (size_t *)malloc(LETTERS_AMOUNT * sizeof(size_t));
- for (size_t i = 0; i < LETTERS_AMOUNT; i++) {
- letters[i] = 0;
- }
- for (size_t i = 0; i < len; i++) {
- letters[string[i] - 'a']++;
- }
- return letters;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement