请用程序实现: 输入一个长度不超过100
的字符串string
,分别统计出这个字符串包含的英文字母、空格、数字和其他字符的个数。
提示: 如果'A' <= char <= 'Z'
,则char
是一个大写字母。
注意: C语言中,可以使用char string_name[num]
保存字符串数据,其中num
表示字符串的最大长度;可以使用gets(string_name)
获取从键盘输入的字符串并将输入的字符串保存到变量string_name
中,可以使用strlen(string_name)
获取字符串string_name
的长度。
示例1
输入
I am a student.
输出
letter: 11
space: 3
number: 0
other: 1
示例2
输入
My telephone number is 123456789.
输出
letter: 19
space: 4
number: 9
other: 1
#include <stdio.h>
#include <string.h> //调用对应函数
int main () {
// TODO 请在此处编写代码,完成题目要求
char string[100];
gets(string);
int letter_num=0,space_num=0,other_num=0,number_num=0;
for(int i=0;i<strlen(string);i++)//注意此处是'<',不是'<=',strlen()的作用是统计字符串长度
{
if(string[i]==' ') space_num++;
else if(string[i]>='0'&&string[i]<='9') number_num++;
else if((string[i]>='a'&&string[i]<='z')||(string[i]>='A'&&string[i]<='Z')) letter_num++;
//if后跟的'()'不能省略
else other_num++;
}
printf("letter:%d\n",letter_num);
printf("space:%d\n",space_num);
printf("number:%d\n",number_num);
printf("other:%d\n",other_num);
return 0;
}