我们进行程序编写的时候,经常会遇到统计字符串中各个字符个数的需求。那么如何实现这种功能呢?下面我给大家分享一下。
工具/材料Visual Studio 2015
01首先打开Visual Studio软件,新建一个Win32应用程序,并且在项目下新建C语言文件,如下图所示
02然后我们在C语言文件中导入程序要用到的库文件,如下图所示
03接下来我们就开始实现字符统计的功能,主要是挨个读取字符串中的字符,然后判断字符的类别,如下图所示
04最后我们运行程序,输入一个字符以后,你就会发现程序已经自动统计好了各种字符的个数了,如下图所示
源程序代码如下:
#include "pch.h"
#define _CRT_SECURE_NO_WARNINGS//VS环境下需要,VC不需要
#include<stdio.h>
int main()
{
char c = 0//定义输入字符变量
int num_count = 0//数字个数
int bigalp_count = 0//大写字母个数
int littlealp_count = 0//小写字母个数
int emp_count = 0//空格个数
int els_count = 0//其他字符个数
while((c = getchar()) != '\n')//连续输入字符直到输入回车结束
{
if((c >= '0')&&(c <= '9'))//判断是否是数字
{
num_count ++
}
else if ((c >= 'a') &&(c <= 'z'))//判断是否是小写字母
{
littlealp_count++
}
else if ((c >= 'A') &&(c <= 'Z'))//判断是否是大写字母
{
bigalp_count++
}
else if(c == ' ')//判断是否是空格
{
emp_count ++
}
else //判断是否其他字符
{
els_count ++
}
}
//输出个数统计值
printf("数字个数:%d\n小写字母个数:%d\n大写字母个数:%d\n",num_count, littlealp_count, bigalp_count)
printf("空格个数:%d\n其他字符个数:%d\n", emp_count, els_count)
return 0
}
程序运行结果如下:
扩展资料:
其他实现方法:
#include <stdio.h>
#include <ctype.h> //对空白字符的判断,调用了isspace()函数,所以要调用头文件
int main()
{
char str[20] //这块对输入有所限制了
int num_count=0
int space_count=0
int other_count=0
char *p=str
gets(str) //接收字符串
while(*p)
{
if(*p>='0'&&*p<='9'){
num_count++
}
else if(isspace(*p)) //用isspace函数来判断是不是空白字符
{
space_count++
}
else
{
other_count++
}
p++
}
printf("num_count=%d\n",num_count)
printf("space_count=%d\n",space_count)
printf("other_count=%d\n",other_count)
return 0
}欢迎分享,转载请注明来源:内存溢出
评论列表(0条)