C语言——字符统计



描述:

 

输入一行字符(字符个数不超过255),统计其中的小写字母、空格和其他字符的个数(字符中可能存在空格,请用gets()读入。)

输入:

 

一行字符串,长度小于255。

输出:

 

三个数字,每个一行,分别代表小写字母、空格和其他字符的个数。

输入样例:

 


 

Xiaolan.Lee 1

 

输出样例:

 


 

8 1 4

 

 

 

答案如下:

#include<stdio.h> #include<string.h> int main() {  char str[255];//定义一个长度为255的数组  int i,x=0,y=0,z=0;  gets(str);//输入字符串  for(i=0;i<strlen(str);i++)  {   if(str[i]>='a'&&str[i]<='z')//判断字符是否为小写字母   x++;   else if(str[i]==' ')//判断字符是否为空格   y++;   else// 其他字符   z++;  }  printf("%d\n%d\n%d\n",x,y,z);//换行输出结果 }

 

 

### C语言 PTA平台 统计字符 示例代码 为了实现统计给定字符串中的同类别字符数量的功能,可以按照如下方式设计程序结构: #### 定义变量用于记录各类字符的数量 创建四个整型变量分别用来保存英文字母、空格或回车符、数字以及其他类型的字符数目。 ```c int letters = 0, spaces_or_newlines = 0, digits = 0, others = 0; ``` #### 遍历输入字符串并分类累加 通过循环读取每一个字符,并利用条件判断语句识别其所属类型,进而更新对应的计数器。对于非字母也非数字是空白字符的情况,则视为其他字符[^1]。 ```c char ch; while ((ch = getchar()) != '\n') { if (isalpha(ch)) ++letters; else if (isspace(ch)) ++spaces_or_newlines; else if (isdigit(ch)) ++digits; else ++others; } ``` 上述代码片段展示了如何逐个处理来自标准输入流的字符直到遇到换行符为止。`getchar()` 函数负责获取单个字符;而 `isalpha()`, `isspace()`, 和 `isdigit()` 是标准库函数,它们能够帮助区分同的字符种类。 #### 输出结果 完成遍历之后,打印出各个类别的最终统计数据即可满足题目要求。 ```c printf("Letters: %d\nSpaces or Newlines: %d\nDigits: %d\nOthers: %d\n", letters, spaces_or_newlines, digits, others); ``` 这段简单的C语言程序实现了基本功能需求——接收用户输入的一串字符序列,并计算其中各特定类型字符的具体数目。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值