输入一个字符串,取出所以数字字符,产生一个新的字符串(用C语言写)
时间: 2024-10-20 07:08:34 浏览: 29
在C语言中,你可以使用`ctype.h`库中的函数来检查每个字符是否为数字,并将其添加到结果字符串中。这里是一个简单的示例程序:
```c
#include <stdio.h>
#include <ctype.h>
#include <stdlib.h> // 包含strlen函数
// 函数用于提取并返回输入字符串中的数字部分
char* extract_digits(const char *str) {
char result[100]; // 结果数组足够大以存储最多99位数
int i = 0;
while (str[i]) { // 遍历输入字符串
if (isdigit(str[i])) { // 检查字符是否为数字
result[i] = str[i];
i++; // 移动指针到下一个字符
} else {
result[i] = '\0'; // 非数字字符结束结果字符串
break; // 跳出循环
}
}
return result; // 返回包含数字的新字符串
}
int main() {
char input[] = "abc123def456";
char* digits_str = extract_digits(input);
printf("提取后的数字字符串: %s\n", digits_str);
free(digits_str); // 释放内存
return 0;
}
```
在这个例子中,`extract_digits`函数会遍历输入字符串,如果遇到数字字符,则将其添加到`result`数组中。当遇到非数字字符时,它会停止并将结果字符串截断。
阅读全文