一个字符串有n组数字,用空格隔开,c语言编写程序用一个整形数组保存字符数组中的10组数字
时间: 2023-11-22 16:54:50 浏览: 192
可以先使用 `scanf` 函数读入字符串,然后使用 `strtok` 函数将字符串按照空格划分成多个子字符串,再将每个子字符串转换为整数保存到整形数组中。
具体实现代码如下:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_STR_LEN 100
int main() {
char input_str[MAX_STR_LEN];
int nums[10];
int i = 0;
// 读入字符串
printf("请输入带有数字的字符串,用空格隔开:\n");
fgets(input_str, MAX_STR_LEN, stdin);
// 按照空格分割字符串,并将每个子字符串转换为整数保存到整形数组中
char *token = strtok(input_str, " ");
while (token != NULL && i < 10) {
nums[i++] = atoi(token);
token = strtok(NULL, " ");
}
// 输出整形数组
printf("整形数组中的数字为:\n");
for (int j = 0; j < i; j++) {
printf("%d ", nums[j]);
}
printf("\n");
return 0;
}
```
示例输入:
```
1 2 3 4 5 6 7 8 9 10 11
```
示例输出:
```
整形数组中的数字为:
1 2 3 4 5 6 7 8 9 10
```
阅读全文