/*
一篇文本共有3行文字,每行不多于5个字符,
要求分别统计处每行中的大写字母,小写字母,
数字,空格,以及其他字符的个数
*/
#include <stdio.h>
#include <stdlib.h>
void countFunc(char *pWordArra,int wordArraLength)
{
int upperChr = 0;
int lowerChr = 0;
int numberChr = 0;
int tabChr = 0;
int othrChr = 0;
for(int i= 0;i < wordArraLength;i++)
{
if(pWordArra[i] >= 'A' && pWordArra[i] <= 'Z')
upperChr += 1;
else if(pWordArra[i] >= 'a' && pWordArra[i] <= 'z')
lowerChr += 1;
else if(pWordArra[i] >= '0' && pWordArra[i] <= '9')
numberChr += 1;
else if(pWordArra[i] == ' ')
tabChr += 1;
else
othrChr += 1;
}
printf("%d %d %d %d %d\n",upperChr,lowerChr,numberChr,tabChr,othrChr);
}
void countCharIn(char *pStr)
{
while ('\0' != *pStr)
{
char wordArra[10] = {0};
int wordArraLength = 0;
while ('\0' != *pStr && '\n' != *pStr)
{
wordArra[wordArraLength] = *pStr;
++wordArraLength;
++pStr;
}
countFunc(wordArra,wordArraLength);
while('\0' != *pStr && '\n' == *pStr)
{
++pStr;
}
}
}
int main()
{
char sentence[1000] = {"abc123 \n1098jk .[\n \n"};
printf("%s\n",sentence);
countCharIn(sentence);
return 0;
}