You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改C语言代码统计感叹号,排除空格、逗号和句号?

解决方案:修改判断条件以仅统计感叹号

你的代码当前逻辑是统计除逗号、空格、句号之外的所有字符,要实现“只统计感叹号字符”的需求,只需把判断逻辑从「排除指定字符」改成「匹配感叹号」即可:

修改后的完整代码:

#include <stdio.h>
#include <string.h>

int main(void) {
    
    char str[51];
    fgets(str, 51, stdin);
    
    int length = strlen(str), count = 0, i;
    
    for (i = 0; i < length-1; i++) {
        // 仅对感叹号字符计数
        if (str[i] == '!') {
            count++;
        }
    }
    printf("%d\n", count);
    return 0;
}

关键修改点:

  • 替换判断条件:把原代码中排除逗号、空格、句号的逻辑,改为直接判断当前字符是否为'!',这样只会统计感叹号,自动排除了其他所有字符(包括你提到的空格、逗号、句号)。
  • 修正输出格式:原代码中printf的换行符写法不完整,补充为\n确保输出后换行。

内容的提问来源于stack exchange,提问作者Caroline Scott

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 16:18:35