合抱之木,生于毫末;九层之台,起于累土;千里之行,始于足下。💪🏻
一、题目描述 ⭐️
二、代码(C语言)⭐️
#include <stdio.h>
#define MAXS 15void StringCount( char *s );
void ReadString( char *s ); /* 由裁判实现,略去不表 */int main()
{char s[MAXS];ReadString(s);StringCount(s);return 0;
}/* Your function will be put here */
void StringCount(char *s) {// 定义一个数组 count,用于存储各类字符的计数:// count[0]: 大写字母数量// count[1]: 小写字母数量// count[2]: 空格数量// count[3]: 数字数量// count[4]: 其他字符数量int count[5] = {0}; // 初始化数组,所有元素为 0// 计算字符串 s 的长度,存储在变量 len 中int len = strlen(s);// 遍历字符串中的每个字符for (int i = 0; i < len; i++) {// 判断当前字符的类型并更新对应的计数器if (s[i] >= 'A' && s[i] <= 'Z') { // 如果字符是大写字母count[0]++; // 大写字母计数器加 1} else if (s[i] >= 'a' && s[i] <= 'z') { // 如果字符是小写字母count[1]++; // 小写字母计数器加 1} else if (s[i] == ' ') { // 如果字符是空格count[2]++; // 空格计数器加 1} else if (s[i] >= '0' && s[i] <= '9') { // 如果字符是数字count[3]++; // 数字计数器加 1} else { // 如果字符是其他字符count[4]++; // 其他字符计数器加 1}}// 打印统计结果,依次输出:// 大写字母数量、小写字母数量、空格数量、数字数量、其他字符数量printf("%d %d %d %d %d\n", count[0], count[1], count[2], count[3], count[4]);
}