top1编程
← 返回题目
题解

统计逗号

1 条题解

  • 0
    @ 2026-8-5 14:38:11

    解题思路

    小童要统计一句话里英文逗号(,)出现了多少次。

    这就像数一数一句话里藏了几个小逗号。我们把句子从头到尾扫一遍,看到 , 就计数器加 1,其他的字符都不管。

    有两个小细节要注意:

    1. 一句话里可能有空格,要用 getline(cin, s) 读整行,这样空格才能读进来;
    2. 只统计英文逗号 ,,不要把它和中文逗号(,)弄混。

    最后把计数器的值输出就行。比如 Hello everyone,this is c++ language. 里只有一个英文逗号,答案就是 1。

    参考代码

    // 统计逗号:统计一句话中英文逗号的个数
    #include <iostream>
    using namespace std;
    int main(){
        string s;
        getline(cin,s); // 一句话可能含空格,读整行
        int cnt=0; // cnt记录逗号个数
        int n=s.size(); // n记录字符串长度
        for(int i=0;i<n;i++){
            if(s[i]==',') cnt++; // 是英文逗号就计数
        }
        cout<<cnt<<endl;
        return 0;
    }
    

    复杂度分析

    • 时间复杂度:把一句话从头到尾检查一遍,长度是 n,所以是 O(n)。
    • 空间复杂度:只用一个计数器,是 O(1)。
    • 1