void main()
{
string s, Letter;
cin >> s;
int count[26], i, s_i;
for (i = 0; i < 26; i++)
count[i] = 0;
int n = sizeof(s);
for (i = 0; i < n; i++)
{
s_i = s[i] - 'a';
count[s_i]++;
}
for (i = 0; i < 26; i++)
{
if (count[i] != 0)
{
Letter = 'a' + i;
cout << Letter << " : " << count[i] << endl;
}
}
}
これは、文字列の文字数を数えるプログラムです。 s_i = s [i] - 'a'の意味はなんですか?特に、なぜ ' - 'を使うのですか?手紙を数える他の方法はありますか?s_i = s [i] - 'a'の意味は何ですか?
「a」 - 「a」が意味することを考えてください。それで、 '' b ' - ' a ''はどういう意味だろう。 –
'a' + 1 = 'b'、 'a' + 2 = 'c' – tofutim
s_i = s [i] - 'a'。これは、インデックスを0から取得するために使用されます。ここでは、単純に2文字のASCII値の違いを取っています。 s_i = s [i] - 'a'はs_i = 98(char 'b'のascii値) - 97(char 'a'のascii値)= 1 –