C语言如何把一维数组存放进二维数组中?

字符型数组a[11]=“123\n456\n789”怎么变成二维整形数组b[3][3]={1,2,3,4,5,6,7,8,9}?

满意请采纳,你的认可是我最大的动力!

#include<stdio.h>
int main()
{
char a[12]="123\n456\n789";
int b[3][3],n=0,i=0,j=0;
while(a[n]!='\0')
{
if(a[n]=='\n')
{
i++;
j=0;
}
else
b[i][j++]=a[n]-'0';
n++;
}
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d ",b[i][j]);
printf("\n");
}
return 0;
}

 

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-12-04
自己写逻辑判断一下再存进去……
第2个回答  2014-12-04
void fun(char *a)
{
int b[3][3]={0};

int i=0;

int j=0;

while(*a)

{
if(*a == '\n')
{
i++;

j=0;

}

b[i][j++]=*a-'0';

}

}本回答被网友采纳
相似回答