Two-dimensional character arrays
A string is an array of characters; hence, an array of strings is an array of arrays of characters. Of course, the utmost size is that the same for all the strings stored during a two-dimensional array.
Declaration:
Syntax
char varname[size][size];
Example:
char a[5][10];
here a is character array which stores 5 strings and every string of length 10 characters.
Initialization of strings:
(i) Static initialization
char a[5][5]={“cse”,”ece”,”eee”,”eie”,”it”};
(ii) Dynamic initialization
char a[5][10];
Example Program:
C program to print 5 strings.
#include<stdio.h>
#include<string.h>
main()
{
char a[5][10]={"ece","cse","eie","eee","it"};
int i;
printf("given strings are\n");
for(i=0;i<5;i++)
printf("%s\n",a[i]);
}
Output:

Example Program:
Write a C program to read and print n strings.
#include<stdio.h>
main()
{
char a[5][10];
int i,n;
printf("enter no of strings");
scanf("%d",&n);
printf("enter %d strings:\n",n);
for(i=0;i<n;i++)
scanf("%s",a[i]);
printf("given strings are\n");
for(i=0;i<n;i++)
{
printf("%s\n",a[i]);
}
}
Output: