利用函数指针统计字符串中各种类型字符的个数

原创 2013年12月05日 15:11:45

/*
功能:对输入的字符串,分别统计字符串内英文字母、空格、数字和其他字符的个数
   
输入:char* pInputString:字符串
   
输出:int * pCharNum:英文字母个数
     int * pBlankNum:空格个数
     int * pDigitNum:数字个数
     int * pOtherNum:其它字符个数
    
返回:void
*/
#include <stdlib.h>
#include <stdio.h>
#include <ctype.h>


bool isChar(char* p)
{
 char ch=*p;
 return (isalpha(ch)!=0);
}
bool isDigit(char* p)
{
    char ch=*p;
 return (isdigit(ch)!=0);
}
bool isBlank(char* p)
{
 char ch=*p;
 return ch==' ';
}

bool isOther(char* p)
{
return true;
}
bool (*func[4])(char* pInputString)={isChar,isBlank,isDigit,isOther};

void StatString(char* pInputString, int* pCharNum, int* pBlankNum, int* pDigitNum, int* pOtherNum)
{
 /*在这里实现功能*/
    if(pInputString==NULL||pCharNum==NULL||pBlankNum==NULL||pDigitNum==NULL||pOtherNum==NULL) return;
 
 int* a[]={pCharNum,pBlankNum,pDigitNum,pOtherNum};
 int b[4]={0};
 char* pc=pInputString;
 while(*pc!='\0')
 {
  for(int i=0;i<4;i++)
  {
  
   if(func[i](pc))
   {
    *(a[i])++;
    b[i]++;
    break;
   }
  }
  pc++;
 }
 /*for(int i=0;i<4;i++)
  *(a[i])=b[i];*/

 *pCharNum=b[0];
 *pBlankNum=b[1];
 *pDigitNum=b[2];
 *pOtherNum=b[3];
 
 return;

使用Map集合求出一个字符窜中各个字符的个数

使用Map利用key值的唯一性可以很好的计算出每个key的个数,只要在put之前判断key是否存在,存在则value+1,否则put(key,1);注意++value,value++的区别,这是个坑...
  • Elementer
  • Elementer
  • 2016年06月18日 21:58
  • 1439

用C++统计字符串中的数字、字符和特殊字符的个数

例2:用C++程序,统计一个字符串中的数字、字符和特殊字符的个数 代码如下: //分别统计一个字符串中的数字、字母和特殊字符的个数 #include #include #define MAX 1...
  • sanqima
  • sanqima
  • 2014年12月20日 10:49
  • 4298

使用python统计字符串中的字符个数。

要求定义函数countchar()统计字符串中所有出现的字母的个数(允许输入大写字符,并且计数时不区分大小写)。输入格式: 字符串输出格式: 列表输入样例: Hello, World!输出样例:...
  • xyq15438
  • xyq15438
  • 2016年10月10日 19:32
  • 4756

统计String字符串中各字符个数

随便一个字符串里里面有中文英文各种符号怎么统计各字符的出现的个数。 package com; import java.util.HashMap; import java.util.Map; ...
  • clam_clam
  • clam_clam
  • 2011年09月24日 21:06
  • 9482

c++实验五-统计字符串中各元素个数

一、代码 #include #include using namespace std; int main() { char s[50]; int i=0,n1=0,n2=0,n3=0,n4=...
  • fuhanbin
  • fuhanbin
  • 2017年05月19日 19:23
  • 290

Python里统计一个字符串中子字符串的个数

以下摘自百度知道,归类于此,方便学习查找。 举例说明:s= 'abababab' 统计s中字符串‘aba'的个数 答案应为3个的时候,用Python2.X版本如何写程序? 如果答案为2个的时候,即...
  • u014675548
  • u014675548
  • 2015年06月02日 17:31
  • 7055

统计字符串中重复的字符个数并输出

//输出字符串各个字符的个数 /* 对重复的字符将其下标存放在vector中,使用unique函数只保存一份重复字符的数字 通过下标查找到相应的字符,从map中取出对应的统计数字 */incl...
  • zhongyoubing
  • zhongyoubing
  • 2016年05月30日 08:55
  • 595

统计字符串中的汉字个数

//问题描述:统计字符串中的汉字个数。 //解题思路是:从汉字机内码的特点考虑:一个汉字是有两个ASCII字符构成,且这两个字符的ASCII码值小于0。 #include #inclu...
  • u014053368
  • u014053368
  • 2014年03月26日 21:08
  • 1111

统计重复字符串的个数

题目:统计重复字符串的个数,并输出。 示例输入:abcdef 示例输出:a1b1c1d1e1f1 示例输入:abbbbbbbbbbbcc 示例输出:a1b11c2...
  • sxh850297968
  • sxh850297968
  • 2015年09月01日 10:46
  • 2150

php统计字符串中中英文字符的个数

  • kinglilei
  • kinglilei
  • 2011年01月05日 16:01
  • 2835
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:利用函数指针统计字符串中各种类型字符的个数
举报原因:
原因补充:

(最多只允许输入30个字)