华为初级――字符个数统计(三种情况)

2014-11-24 13:08:33 · 作者: · 浏览: 5
第一种情况:
描述:写出一个程序,接受一个有字母和数字组成的字符串,和一个字符,然后输出输入字符串中含有该字符的个数。不区分大小写。
知识点:字符串,函数,指针  
题目来源:内部整理  
练习阶段:初级  
运行时间限制:10Sec 
内存限制:128MByte 
输入:输入一个有字母和数字组成的字符串,和一个字符。  
输出:输出输入字符串中含有该字符的个数。 
样例输入:
ABCDEF
A                   
样例输出: 1
源程序:

#include
  
   
using namespace std;
#define MAXSIZE 100
int main()
{
	char c[MAXSIZE];
	char ch;
	int getCharCount(char c[],char ch);
	gets(c);
	ch=getchar();
	int count;
	count=getCharCount(c,ch);
	cout<
   
    ='A'&&ch<='Z')//不区分大写小写 chx=ch+32; else chx=ch-32; if(*p==ch||*p==chx) i++; p++; } return i; }
   
  
运行结果:

\

\

第二种情况:
描述:编写一个函数,计算字符串中含有的不同字符的个数。字符在ACSII码范围内(0~127)。不在范围内的不作统计。
知识点:字符串,函数,指针  
题目来源:内部整理  
练习阶段:初级  
运行时间限制:10Sec 
内存限制:128MByte 
输入:输入N个字符,字符在ACSII码范围内(0~127)。  
输出:输出字符的个数。  
样例输入:abc                    
样例输出:3
源程序:

#include
  
   
using namespace std;
#define MAXSIZE 100
int main()
{
	char c[MAXSIZE];
	int getCharCount(char c[]);
	gets(c);
	int count;
	count=getCharCount(c);
	cout<
   
    运行结果: 
    

\

\

第三种情况:
描述:输入一行字符,分别统计出包含英文字母、空格、数字和其它字符的个数。
    /**
     * 统计出英文字母字符的个数。
     * 
     * @param str 需要输入的字符串
     * @return 英文字母的个数
     */
    public static int getEnglishCharCount(String str)
    {
        return 0;
    } 
    /**
     * 统计出空格字符的个数。
     * 
     * @param str 需要输入的字符串
     * @return 空格的个数
     */
    public static int getBlankCharCount(String str)
    {
        return 0;
    }   
    /**
     * 统计出数字字符的个数。
     * 
     * @param str 需要输入的字符串
     * @return 英文字母的个数
     */
    public static int getNumberCharCount(String str)
    {
        return 0;
    }   
    /**
     * 统计出其它字符的个数。
     * 
     * @param str 需要输入的字符串
     * @return 英文字母的个数
     */
    public static int getOtherCharCount(String str)
    {
        return 0;
    } 
知识点:字符串  
题目来源:内部整理  
练习阶段:初级  
运行时间限制: 10Sec 
内存限制:128MByte 
输入:输入一行字符串,可以有空格  
输出:统计其中英文字符,空格字符,数字字符,其他字符的个数 
样例输入:1qazxsw23 edcvfr45tgbn hy67uj m,ki89ol.\\/;0-=\\][                    
样例输出: 
26
3
10
12
源程序:

#include
     
      
#include
      
        using namespace std; #define MAXSIZE 100 int main() { int getEnglishCharCount(string str); int getBlankCharCount(string str); int getNumberCharCount(string str); int getOtherCharCount(string str); char str[MAXSIZE]; gets(str); int Eng_count,Bla_count,Num_count,Oth_count; Eng_count=getEnglishCharCount(str); Bla_count=getBlankCharCount(str); Num_count=getNumberCharCount(str); Oth_count=getOtherCharCount(str); cout<
       
        ='A'&&str[i]<='Z')||(str[i]>='a'&&str[i]<='z')) engcount++; i++; } return engcount; } int getBlankCharCount(string str) { int i=0,blacount=0; while(str[i]!='\0') { if((str[i]==' ')) blacount++; i++; } return blacount; } int getNumberCharCount(string str) { int i=0,numcount=0; while(str[i]!='\0') { if(str[i]>='0'&&str[i]<='9') numcount++; i++; } return numcount; } int getOtherCharCount(string str) { int i=0; int e,b,n; int othcount; e=getEnglishCharCount(str); b=getBlankCharCount(str); n=getNumberCharCount(str); while(str[i]!='\0') i++; othcount=i-e-b-n; return othcount; }
       
      
     
运行结果: