C语言提取字符串中的数字字符:完整代码与解析
C语言提取字符串中的数字字符:完整代码与解析
本文将介绍如何使用C语言从字符串中提取所有数字字符,并将结果存储到一个新的字符数组中。
问题描述:
给定一个字符串,例如 'abc123efg456gh',编写一段C代码,将字符串中的所有数字字符提取出来,并存储到一个新的字符数组中,最终输出 '123456'。
**代码实现:**c#include <stdio.h>
int main() { char s[] = 'abc123efg456gh'; char d[100]; int j = 0;
for (int i = 0; s[i] != '�'; i++) { if (s[i] >= '0' && s[i] <= '9') { d[j] = s[i]; j++; } }
d[j] = '�';
printf('%s
', d);
return 0;}
代码解析:
- 包含头文件:
#include <stdio.h>引入标准输入输出库,提供printf函数用于输出结果。2. 定义变量: -char s[] = 'abc123efg456gh';定义一个字符数组s存储原始字符串。 -char d[100];定义一个字符数组d用于存储提取的数字字符,最大可存储99个字符。 -int j = 0;定义一个整数变量j作为数组d的索引,初始值为0。3. 遍历字符串: 使用for循环遍历字符串s中的每个字符。4. 判断数字字符: 使用if (s[i] >= '0' && s[i] <= '9')判断当前字符是否为数字字符。5. 存储数字字符: 如果当前字符是数字,则将其存储到数组d中,并使用j++将索引j加 1,指向下一个存储位置。6. 添加字符串结束符: 循环结束后,在数组d的末尾添加字符串结束符'�',表示字符串的结束。7. 输出结果: 使用printf('%s ', d);输出提取后的数字字符数组d的内容。
运行结果:
运行上述代码,程序将输出:
123456
总结:
本文介绍了如何使用C语言从字符串中提取数字字符。通过学习本例,你可以了解如何使用循环、条件判断和数组操作来处理字符串。此外,你还可以尝试使用其他方法来解决这个问题,例如使用库函数 isdigit() 来判断字符是否为数字。
原文地址: http://www.cveoy.top/t/topic/f4kZ 著作权归作者所有。请勿转载和采集!