C++ Program to Print Occurrence of Characters from ‘a’ to ‘z’ in a Given File

bookmark

#include <iostream>
#include <string>
#include <fstream>
#include <cctype>
 
int main()
{
    int arr[26];
    std::ifstream file("test.cpp");
    std::string str;
 
    for (int i = 0; i < 26; i++)
    {
        arr[i] = 0;
    }    
    while (getline(file, str))
    {
        int i = 0;
        while (str[i] != '\0')
        {
            if (isalpha(str[i]))
                arr[(str[i] - 'a')]++;
            i++;
        }
    }
    std::cout << "Count of character \'a\' - \'z\'\n";
    for (int i = 0; i < 26; i++)
    {
        char c = 'a' + i;
        std::cout << c << " " << (arr[i] + '0') << "\t";
        if ((i + 1) % 6 == 0)
            std::cout << std::endl;
    }
    std::cout << std::endl;
    file.close();
}

 

Output:

Count of character 'a' - 'z'
a 65    b 48    c 65    d 62    e 68    f 58
g 52    h 53    i 86    j 48    k 48    l 62
m 53    n 65    o 60    p 52    q 48    r 73
s 69    t 83    u 57    v 48    w 50    x 48
y 49    z 49