c语言将字符串转换为数组
时间: 2023-11-13 19:58:42 浏览: 407
C语言中将字符串转换为数组可以通过以下方法实现:
1. 利用循环遍历字符串,将每个字符转换为对应的数字存入数组中。
2. 利用库函数sscanf()将字符串按照指定格式转换为数组。
下面是两种方法的具体实现:
1. 利用循环遍历字符串,将每个字符转换为对应的数字存入数组中。
```
#include <stdio.h>
#include <string.h>
int main() {
char str[] = "12345";
int arr[5];
int i;
for(i=0; i<strlen(str); i++) {
arr[i] = str[i] - '0';
}
for(i=0; i<5; i++) {
printf("%d ", arr[i]);
}
return 0;
}
```
2. 利用库函数sscanf()将字符串按照指定格式转换为数组。
```
#include <stdio.h>
int main() {
char str[] = "1 2 3 4 5";
int arr[5];
int i;
sscanf(str, "%d %d %d %d %d", &arr[0], &arr[1], &arr[2], &arr[3], &arr[4]);
for(i=0; i<5; i++) {
printf("%d ", arr[i]);
}
return 0;
}
```
相关问题
c语言将字符串转化为数组
在 C 语言中,字符串实际上是一个以 null 结尾的字符数组。因此,我们可以通过将字符串转换为字符数组来操作它。
以下是将字符串转换为字符数组的示例代码:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str[] = "Hello World";
int len = strlen(str);
char arr[len];
strcpy(arr, str);
printf("String: %s\n", str);
printf("Array: ");
for (int i = 0; i < len; i++)
{
printf("%c ", arr[i]);
}
printf("\n");
return 0;
}
```
在上面的示例代码中,我们首先定义了一个字符串 `str`,并计算了它的长度。然后,我们使用 `strlen()` 函数获得了字符串的长度,并将其存储在 `len` 变量中。接下来,我们定义了一个字符数组 `arr`,其大小为 `len`。最后,我们使用 `strcpy()` 函数将字符串 `str` 复制到字符数组 `arr` 中,并将其打印出来。
输出结果为:
```
String: Hello World
Array: H e l l o W o r l d
```
c语言如何将字符串转化为数组
在 C 语言中,我们可以使用字符串转换函数 `strtok` 将一个字符串转换为数组。以下是一个示例代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[] = "1,2,3,4,5";
char *token;
int arr[5];
int i = 0;
token = strtok(str, ",");
while (token != NULL) {
arr[i++] = atoi(token);
token = strtok(NULL, ",");
}
for (i = 0; i < 5; i++) {
printf("%d ", arr[i]);
}
return 0;
}
```
在这个例子中,我们将字符串 `1,2,3,4,5` 转换为整数数组,并使用 `printf` 函数输出数组的每个元素。
阅读全文