有一篇文章,共有三行文字,每行有80个字符。要求分别统计出其中英文大写字母、小写字母、数字、空格以及其他字符的个数。
#include <stdio.h>
#include <stdlib.h>
void cal(char a[][80], int len)
{
for (int i = 0; i < len; i++)
{
int word_up = 0;
int word_low = 0;
int num = 0;
int space = 0;
int other = 0;
for (int j = 0; j < 80; j++)
{
if (a[i][j] <= '9' && a[i][j] >= '0')
{
num++;
}
else if (a[i][j] >= 'a' && a[i][j] <= 'z')
{
word_low++;
}
else if (a[i][j] >= 'A' && a[i][j] <= 'Z')
{
word_up++;
}
else if(a[i][j] == ' ')
{
space++;
}
else
{
other++;
}
}
printf("str[%d]中,大写字母 %d,小写字母 %d,数字 %d,空格 %d,其他字符 %d\n\n", i, word_up, word_low, num, space, other);
}
}
int main()
{
char str[3][80];
for (int i = 0; i < 3; i++)
{
gets(str[i]);
}
cal(str, 3);
system("pause");
return 0;
}
答案
有一篇文章,共有三行文字,每行有80个字符。要求分别统计出其中英文大写字母、小写字母、数字、空格以及其他字符的个数。