A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 栗海云 中级黑马   /  2016-5-9 22:38  /  850 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


      有如下字符串char str[] = "asjdfhgkaL;JIASFHBLASHFIQijfe39ajsbdkhw3;NLhpnlkNLIhOJN";

   
    //    1)统计字符串中大写字母的出现次数

   
    //
    //    2)统计字符串中小写字母的出现次数
   

   
    //    3)统计数字的出现个数
   

2 个回复

倒序浏览
挺简单的吧,用ASCII码值判断即可~
回复 使用道具 举报
#include <stdio.h>

int countCapital(char str[]);
int countMinuscule(char str[]);
int countNumber(char str[]);

int main(int argc, char *argv[]) {
        char str[] = "asjdfhgkaL;JIASFHBLASHFIQijfe39ajsbdkhw3;NLhpnlkNlIhOJN";
       
        int capital = countCapital(str);
        int minuscule = countMinuscule(str);
        int number = countNumber(str);
       
        printf("Capital is %d\nMinuscule is %d\nNumber is %d\n", capital, minuscule, number);
       
        return 0;
}

int countCapital(char str[]) {
        int count = 0;
        int i = 0;
        while(str[i] != '\0') {
                if(str[i] >= 'A' && str[i] <= 'Z')
                        count++;
                i++;
        }
        return count;
}

int countMinuscule(char str[]) {
        int count = 0;
        int i = 0;
        while(str[i] != '\0') {
                if(str[i] >= 'a' && str[i] <= 'z')
                        count++;
                i++;
        }
        return count;
}

int countNumber(char str[]) {
        int count = 0;
        int i = 0;
        while(str[i] != '\0') {
                if(str[i] >= '0' && str[i] <= '9')
                        count++;
                i++;
        }
        return count;
}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马