1 条题解
-
0
思路分析
1. 任务拆解: 我们要统计一串以
.结束的字符中有多少个大写英文字母。2. 关键点分析:
- 字符串以
.作为结束标志(虽然代码中没有显式检查,但题目说明以.结束) - 需要遍历字符串中的所有字符
- 统计其中大写字母(A-Z)的数量
3. 步骤规划:
- 第一步: 读取一整行字符串(可能包含空格)。
- 第二步: 准备一个计数器
ans,初始为0。 - 第三步: 从字符串的最后一个字符开始往前遍历:
- 如果当前字符是大写字母(A-Z),计数器加1
- 继续检查前一个字符
- 第四步: 遍历结束后,输出统计结果。
4. 代码对应:
getline(cin,a);读取整行字符串int ans=0;初始化计数器for(int i=a.size()-1;i>=0;i--)从后往前遍历字符串if(a[i]>='A'&&a[i]<='Z') ans++;如果是大写字母就计数cout<<ans;输出统计结果
简单理解: 就像从字符串的末尾开始往前检查,遇到大写字母就记录下来,最后统计一共有多少个。虽然是从后往前遍历,但统计结果与从前往后遍历是一样的。
- 字符串以
- 1
信息
- ID
- 183
- 时间
- 1000ms
- 内存
- 16MiB
- 难度
- 4
- 标签
- (无)
- 递交数
- 641
- 已通过
- 278
- 上传者