题目:编写一函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其它字符的个数,在主函数中输入字符串以及输出上述结果。 只要结果,别输出什么提示信息
考点:1、gets()的输入和scanf()输入有什么区别
? ? ? ? ? ? ? ? ? ? ? ? 这个区别自己找吧,我就不写了,也不太难。
? ? ? ? ? ?2、如何定义一个字符串
? ? ? ? ? ?3、对于库函数ctype.h中函数的运用
? ? ? ? ? ? ? ? ????????对于判断是字符还是数字还有空格,也可以用ascii码判断,也可以用库函数
? ? ? ? ? ?4、如何给函数传字符串
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
#include<ctype.h>
void total(char str[]);
int main(void) {
char str[1000] = {0};
gets(str);
total(str);
return 0;
}
void total(char str[]) {
int i = 0, letter = 0, number = 0, block = 0, other = 0;
for (i = 0; i < strlen(str); i++) {
if (isalpha(str[i])) {
letter++;
} else if (isdigit(str[i])) {
number++;
} else if (str[i] ==' ') {
block++;
} else {
other++;
}
}
printf("%d %d %d %d", letter, number, block, other);
}
|