c语言中如何将一个一维字符数组数组转化为二维字符数组?
展开全部
如下程序给你一点思路吧!有不明白的地方可以追问!
#include<stdio.h>
int main(void)
{
char i,j,str1[12]="hello world",str2[2][6]={0};
printf("以下操作演示将一维字符数组str1[12]转化为二维字符数组str[2][6]!\n");
for(i=0;i<6;i++) str2[0][i]=str1[i];
for(i=6;i<12;i++) str2[1][i-6]=str1[i];
printf("打印str1的内容!\n");
puts(str1);
printf("打印str2的内容!\n");
for(i=0;i<2;i++)
for(j=0;j<6;j++)
printf("%c",str2[i][j]);
return 0;
}
#include<stdio.h>
int main(void)
{
char i,j,str1[12]="hello world",str2[2][6]={0};
printf("以下操作演示将一维字符数组str1[12]转化为二维字符数组str[2][6]!\n");
for(i=0;i<6;i++) str2[0][i]=str1[i];
for(i=6;i<12;i++) str2[1][i-6]=str1[i];
printf("打印str1的内容!\n");
puts(str1);
printf("打印str2的内容!\n");
for(i=0;i<2;i++)
for(j=0;j<6;j++)
printf("%c",str2[i][j]);
return 0;
}
展开全部
把一维字符数组赋值给二维字符数组就行吧。
追问
恩恩,请写一下
追答
#include
int main
{
char a[4] = {'a','b','c','d'};
char b[2][2];
int i,j,k =0;
for (i = 0;i< 2;i++)
for (j = 0 ;j<2;j++)
{ b[i][j] = a[k];
k++;}
printf("输出二维数组:");
for (i = 0;i< 2;i++)
for (j = 0 ;j<2;j++)
printf("%c ",b[i][j]);
printf("\n");
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
定义了之后一般就不能再变了 你可以再定义一个二维字符数组然后再赋值
追问
能不能将代码写一下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询