我修改了我的代码以包含一个计数器,它似乎正在工作,但我不喜欢它的实现方式。它似乎在单词完成之前计算每个字母并输出计数。
#include <stdio.h>
#include <ctype.h>
#include <string.h>
int main (int argc, char** argv)
{
char C;
char vowels[]={'a','e','i','o','u'};
int counter=0;
do
{
C = getchar();
if(memchr(vowels,C, sizeof(vowels)))
{printf("*\n");
counter++;
printf("%i", counter);
}
else
{
printf("%c",C);
}
}while (C!='Q');
}
我希望游戏输入的输出类似于以下内容
g*m*
2
我现在得到的只是
g*
1m*
2
另外我如何修改代码,以便将大写字母也读为小写?C中有类似isupper或islower的东西吗?