数据结构(字符统计)

有人可以解读一下这个代码的意思嘛

#include 
#include 
using namespace std;


void count(string str)
{
    int num[36]={0};
    int n=str.length();
    int i,j;
    for(i=0;ichar ch=str[i];
        if(ch>='0' && ch<='9')
        {
            num[ch-'0']++;
        }
        else if(ch>='A' && ch<='Z')
        {
            num[ch-'A'+10]++;
        }
    }
    
    for(i=0;i<36;i++)
    {
        char ch;
        if(i<10) 
        {
            ch=i+'0';
            cout<<"num["<"]="<else
         {
             ch=i+'A'-10;
             cout<<"num["<"]="<int main()
{
    string str;
    getline(cin,str);
    count(str);
    return 0;
}



num是一个数组,0到9存储的是数字0-9的频次,10到35存的是26个大写字母的频次,然后集中打印数字的频次和字母的频次