题目
本题是谭浩强《C程序设计课后习题》题7.9。
题目:
编写一个函数, 由实参传来一个字符串,
统计此字符串中字母、数 字、空格和其他字符的个数,
在主函数中输人字符串以及输出上述的 结果。
以下是本篇文章正文内容,欢迎朋友们进行指正,一起探讨,共同进步。——来自考研路上的lwj
一、解题思路
思路:
1,在循环中遍历整个数组,定义全局变量letter, num, speace, other;对应:字母、数 字、空格和其他字符,
2,全局变量初值为0且全局可用。
3,然后在循环中依次判断是否符合相应的条件,符合就相应的值+1,
4,直到将整个数组遍历完后将这些值在主函数输出。
二、代码部分
1.引入库
代码如下(示例):
#include<stdio.h>
2.主函数部分
代码如下(示例):
int letter, num, speace, other;/*字母、数 字、空格和其他字符*/
void search(char str[])
{
for (int i = 0; str[i]; i++)
{
if ((str[i] >= 'A' && str[i] <= 'Z') || (str[i] >= 'a' && str[i] <= 'z'))
letter++;
else if (str[i] >= '0' && str[i] <= '9')
num++;
else if (str[i] == ' ')
speace++;
else
other++;
}
}
void main()
{
char str[128];
gets(str);
search(str);
printf("字母%d、数字%d、空格%d,其他字符%d", letter, num, speace, other);
}
三、执行结果
输入:
123AB AB * *
输出:
字母4、数字3、空格3,其他字符2