C语言,将N×N的二维数组中的字符数据按列的顺序依次放到一个字符串(一维数组)中
时间: 2024-02-26 11:57:08 浏览: 107
可以通过遍历二维数组,依次将每一列的字符拼接到一维数组中。具体实现可以参考下面这段示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define N 3 // 定义二维数组的行列数
int main() {
char arr[N][N] = {{'a', 'b', 'c'}, {'d', 'e', 'f'}, {'g', 'h', 'i'}};
char *str = (char*) malloc(sizeof(char) * N * N); // 申请一维数组存储结果
int i, j, k = 0;
for (j = 0; j < N; j++) { // 遍历每一列
for (i = 0; i < N; i++) { // 遍历每一行
str[k++] = arr[i][j]; // 将该列的字符依次拼接到一维数组中
}
}
str[k] = '\0'; // 在末尾添加字符串结束符
printf("%s\n", str);
free(str); // 释放内存
return 0;
}
```
运行结果为:abcdefghi
阅读全文
相关推荐














