| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2872 人关注过本帖
标题:输入一行字符,以回车做结束标志,统计出其中大写字母个数,小写字母个数, ...
只看楼主 加入收藏
zhangle张乐
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2019-6-16
结帖率:0
收藏
已结贴  问题点数:20 回复次数:3 
输入一行字符,以回车做结束标志,统计出其中大写字母个数,小写字母个数,特殊字符,
输入一行字符,以回车做结束标志,统计出其中大写字母个数,小写字母个数,特殊字符,求大佬指点!!!
搜索更多相关主题的帖子: 大写 字母 个数 小写 特殊字符 
2019-06-17 23:11
Mr_doge
Rank: 5Rank: 5
等 级:贵宾
威 望:10
帖 子:159
专家分:385
注 册:2018-6-28
收藏
得分:10 
字符在内存中其实都是以数值存储的,万物皆为数值!(中二发作)
而且英文字符和数字的字符数值其实是相邻的
所以你可以把一行字符存在内存,再逐个校对((x >= 'a') && (x <= 'z')) ? a++ : (((x >= 'A') && (x <= 'Z')) ? A++ : special++) 巴拉巴拉的逻辑了你喜欢怎么样就怎么样来
完事

看不懂就自己写,写不好再发出来,写都不写一下,你怎么证明你不会呢,凡事讲究实事求是,你说你不会?我不信,除非你写给我们康康

[此贴子已经被作者于2019-6-18 11:31编辑过]

2019-06-18 10:53
吕孟伟
Rank: 8Rank: 8
等 级:贵宾
威 望:27
帖 子:200
专家分:870
注 册:2018-10-4
收藏
得分:10 
程序代码:
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>

 
int main(void)
{
    char ch = {0};
    int i, j, k, n;
    i = j = k = n = 0;
    printf("please you input the string:");
    while((ch=getchar())&&ch != '\n'){
        if(islower(ch)){
            i++;//小写字母 
        }else if(isupper(ch)){
            j++;//大写字母 
        }else if(isdigit(ch)){
            k++;//十进制数字 
        }else{
            n++;//这里是除大小写字母,十进制数字外都按特殊字符对待了 
        } 
    }
    printf("The lowercase letter is%d, the capital letter is%d, the number is%d, and the special character is%d\n", i, j, k, n); 
    system("pause");
    return 0;
}

代码输出:
please you input the string:%%(-kjhASD123
The lowercase letter is3, the capital letter is3, the number is3, and the specia
l character is4

借用一下侯捷的话:勿在浮沙筑高台。
2019-06-18 12:45
zhangle张乐
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2019-6-16
收藏
得分:0 
2019-06-18 16:43
快速回复:输入一行字符,以回车做结束标志,统计出其中大写字母个数,小写字母个 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015528 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved