C语言字符串处理:统计字符串中数字字符个数
C语言字符串处理:统计字符串中数字字符个数
这篇文章将介绍如何使用C语言编写一个程序,用于统计输入字符串中数字字符的个数。
代码示例
#include <stdio.h>
int main() {
    char string[80];
    printf('Enter a string:');
    fgets(string, sizeof(string), stdin);
    
    int count = 0;
    for (int i = 0; string[i] != '\0'; i++) {
        if (string[i] >= '0' && string[i] <= '9') {
            count++;
        }
    }
    
    printf('count=%d\n', count);
    
    return 0;
}
代码解释
#include <stdio.h>: 包含标准输入输出库,以便使用printf和fgets函数。char string[80];: 定义一个字符数组string,用于存储用户输入的字符串,最大长度为 80 个字符。printf('Enter a string:');: 在控制台上显示提示信息,引导用户输入字符串。fgets(string, sizeof(string), stdin);: 从标准输入流读取用户输入的字符串,并存储到string数组中。int count = 0;: 定义一个整数变量count,用于存储数字字符的个数,初始值为 0。for (int i = 0; string[i] != '\0'; i++): 使用循环遍历字符串中的每个字符,直到遇到字符串结束符'\0'。if (string[i] >= '0' && string[i] <= '9'): 判断当前字符是否是数字字符。count++;: 如果当前字符是数字字符,则将计数器count加 1。printf('count=%d\n', count);: 打印最终的数字字符个数。
输入输出样例
输入:
Enter a string:1212shanghai345
输出:
count=7
注意
- 程序假设用户输入的字符串不超过 79 个字符,因为 
string数组的最大长度为 80,还需要预留一个位置存放字符串结束符'\0'。 - 程序使用 
fgets函数读取用户输入,可以避免使用scanf函数读取字符串时可能遇到的缓冲区溢出问题。 
原文地址: https://www.cveoy.top/t/topic/n8b 著作权归作者所有。请勿转载和采集!