C语言学习之统计英文字符串中26个字母大小写出现的次数

  • 实例要求:
  • 编写C语言代码,统计出英文字符串中26个字母大写和小写出现的次数;
  • 输入输出如下所示:
c 复制代码
输入:
	"aabbAAABBCCCCZZ"
输出:
	a ------- 2
	A ------- 3
	b ------- 2
	B ------- 2
	c ------- 0
	C ------- 4
	.
	.
	.
	Z ------- 2
  • 实例分析:
  • 1.对字符串用while循环或者for循环进行遍历,找到26个英文字母大小写
  • 2.将所有英文字母大写或者小写都转换成ASCII值,进行运算;
  • 3.封装相应的功能函数,在main函数中进行函数调用即可;
  • 示例代码:
c 复制代码
#include <stdio.h>
#include <string.h>

void init_string(char *p){


        scanf("%s",p);

    
}

void count_string(char *p,int *num1,int *num2){

    int len = strlen(p);
    for(int i = 0;i < len; i++){

           if(p[i] >= 'a' && p[i] <= 'z')
		   {
		   
		         num1[p[i] - 'a'] += 1;
		   
		   
		   }

		   if(p[i] >= 'A' && p[i] <= 'Z')
		   {
		   
		         num2[p[i] - 'A'] += 1;
		   
		   
		   }


    }





}


void print_string(int *num1,int *num2){

    for(int i = 0; i < 26; i++){

         printf("%c ------- %d\n", 'a'+i, num1[i]);
         printf("%c ------- %d\n", 'A'+i, num2[i]);


    }

}


int main(int argc, char const *argv[])
{
    
    char a[200] = {0};
    int m[26] = {0};
    int n[26] = {0};

    printf("请输入一段纯英文的字符串>>\n");

    init_string(a);

    count_string(a,m,n);

    print_string(m,n);

    return 0;
}
  • 运行结果:
c 复制代码
aabbAAABBCCCCZZ
a ------- 2
A ------- 3
b ------- 2
B ------- 2
c ------- 0
C ------- 4
d ------- 0
D ------- 0
e ------- 0
E ------- 0
f ------- 0
F ------- 0
g ------- 0
G ------- 0
h ------- 0
H ------- 0
i ------- 0
I ------- 0
j ------- 0
J ------- 0
k ------- 0
K ------- 0
l ------- 0
L ------- 0
m ------- 0
M ------- 0
n ------- 0
N ------- 0
o ------- 0
O ------- 0
p ------- 0
P ------- 0
q ------- 0
Q ------- 0
r ------- 0
R ------- 0
s ------- 0
S ------- 0
t ------- 0
T ------- 0
u ------- 0
U ------- 0
v ------- 0
V ------- 0
w ------- 0
W ------- 0
x ------- 0
X ------- 0
y ------- 0
Y ------- 0
z ------- 0
Z ------- 2
相关推荐
番茄灭世神16 分钟前
汇顶模拟前端GH3220使用备忘录
c语言·单片机·传感器·模拟芯片·电生理信号处理
我是唐青枫16 分钟前
C#.NET PInvoke 深入解析:封送、内存布局与原生互操作实战
开发语言·c#·.net
程序猿编码26 分钟前
纯C++轻量计算机视觉推理引擎:基于GGML的端侧CV模型部署技术全解析
开发语言·c++·计算机视觉·大模型·transformer
SEO_juper43 分钟前
外贸多语言站最隐蔽的流量杀手:hreflang 错了,谷歌把德语页推给美国人(附审计脚本)
开发语言·前端·python·seo·独立站·谷歌优化
GIS好难学1 小时前
想转GIS开发,企业会卡专业背景吗?
学习·gis·gis开发·webgis
老猿讲编程1 小时前
【Eclipse OpenSOVD学习之十四】差距清单与演进建议
学习·rust·eclipse·车载·sovd
geovindu1 小时前
CSharp: Strategy Pattern
开发语言·后端·c#·.net·.netcore·策略模式·行为模式
传奇开心果编程1 小时前
【Xilem 0.4 基础语法学与练】第17课:Lens 机制——状态切片与子组件复用
学习·rust·前端框架
Tairitsu_H1 小时前
[C++] C++11新增构造:列表初始化和std::initializer_list
开发语言·c++·c++11·构造
宣宣猪的小花园.1 小时前
【嵌入式】故障与降级:看门狗、保护机制和工程可靠性的底线
开发语言·人工智能·嵌入式硬件·机器学习