C语言如何提取CPU0_C2D1中的三个数字
时间: 2024-04-12 20:30:22 浏览: 19
在C语言中,你可以使用字符串处理函数和字符操作来提取出"CPU0_C2D1"中的三个数字。下面是一个示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main() {
char string[] = "CPU0_C2D1";
char numbers[3][10]; // 存储提取出的数字
int count = 0; // 记录提取出的数字个数
for (int i = 0; string[i] != '\0'; i++) {
if (isdigit(string[i])) {
int j = 0;
while (isdigit(string[i])) {
numbers[count][j++] = string[i++];
}
numbers[count][j] = '\0';
count++;
}
}
// 打印提取出的数字
for (int i = 0; i < count; i++) {
printf("Number %d: %s\n", i+1, numbers[i]);
}
return 0;
}
```
在这个示例中,我们使用一个循环遍历输入字符串中的每个字符。如果当前字符是一个数字(使用isdigit()函数判断),我们将连续的数字字符拷贝到一个临时数组中,直到遇到非数字字符。然后,我们将提取出的数字存储在一个二维字符数组中。最终,我们通过循环打印出提取出的数字。请注意,这个示例假设输入字符串中的每个数字都是整数类型。如果有其他要求,请相应地调整代码。