习题6-1 分类统计字符个数 (15分)
本题要求实现一个函数,统计给定字符串中英文字母、空格或回车、数字字符和其他字符的个数。
裁判测试样例:
#include <stdio.h>
#define MAXS 15
void StringCount( char s[] );
void ReadString( char s[] ); /* 由裁判实现,略去不表 */
int main()
{
char s[MAXS];
ReadString(s);
StringCount(s);
return 0;
}
/* Your function will be put here */
输入样例:
aZ &
09 Az
输出样例:
letter = 4, blank = 3, digit = 2, other = 1
0~31及127(共33个)是控bai制字符或通信专用字符(其余为可显示字符),如控制符:LF(换行)、CR(回车)、FF(换页)、DEL(删除)、BS(退格)、BEL(响铃)等;通信专用字符:SOH(文头)、EOT(文尾)、ACK(确认)等;ASCII值为8、9、10 和13 分别转换为退格、制表、换行和回车字符。它们并没有特定的图形显示,但会依不同的应用程序,而对文本显示有不同的影响。
32~126(共95个)是字符(32是空格)
其中48~57为0到9十个阿拉伯数字
65~90为26个大写英文字母
97~122号为26个小写英文字母,其余为一些标点符号、运算符号等。
(参考自百度知道)
首先介绍一个算法,关于C语言多行输入网上有诸多🌰,材料《C语言实现在不知道具体行数的情况下实现多行字符串的输入》(https://blog.csdn.net/sinat_38205774/)介