题解 | 华为HJ40#统计字符#
统计字符
https://www.nowcoder.com/practice/539054b4c33b4776bc350155f7abd8f5
描述
输入一行字符,分别统计出包含英文字母、空格、数字和其它字符的个数。
数据范围:输入的字符串长度满足 1≤n≤1000
输入描述:
输入一行字符串,可以有空格
输出描述:
统计其中英文字符,空格字符,数字字符,其他字符的个数
示例1
输入:
1qazxsw23 edcvfr45tgbn hy67uj m,ki89ol.\\/;p0-=\\][
输出:
26 3 10 12
#include <stdio.h> #include<string.h> //以下是Senky的代码 int main() { char a[1000];//字符串数组 scanf("%[^\n]", a);//获取一行 int count[4] = {0}; //四个计数器,分别存放英文、空格、数字、其他字符个数 int i = 0; for (i = 0; i < strlen(a); i++) { if (a[i] >= '0' && a[i] <= '9') count[2]++; //先判断数字 else if ( (a[i] >= 'a' && a[i] <= 'z') || (a[i] >= 'A' && a[i] <= 'Z') ) count[0]++;//再判断英文字母 else if (a[i] == ' ') count[1]++; //再判断空格 else count[3]++;//剩下的一律是其他字符 } for (i = 0; i < 4; i++) { printf("%d\n", count[i]);//循环输出计数器 } return 0;//编辑于2022/09/17 }
总结:
①为了保存HJ的代码;
②当前帖子仅供自我精进、学习使用,有不足之处欢迎指正。
华为-HJ 文章被收录于专栏
机试的题解