二维字符串数组是由多个字符串组成的数组,可以采取循环输入一维字符串的做法为这样的二维数组赋值。
#include <stdio.h>
int main()
{
int i,j,a[10][10];
for(i=1;i<=3;i++)
scanf("%s",a[i]);
return 0;
}
这个代码片可以作为一种输入思路的参考。
当然我们可以选择利用指针,这样输入效率会有一定的提高。
#include <stdio.h>
int main()
{
int a[10][10],i;
int *p=a[10];//定义一个指针指向数组,p+i就指向二维数组的第i行
for(i=0;i<10;i++)
scanf("%s",p+i);
return 0;
}
同样的,我们还可以直接用数组名
#include <stdio.h>
int main()
{
int a[10][10],i;
for(i=0;i<10;i++)
scanf("%s",a+i);
}