A C string, by definition, is an array of characters terminated with a null character ('\0'). So to read and save a string, you need a character array to store it in*. Therefore, in response to your question, the work has already been done.
Code:
#include <stdio.h>
#define MAX_LEN 64
int main(void)
{
char input_string[MAX_LEN]; /* character array to store the string */
int i;
printf("Enter a string:\n");
fgets(input_string,sizeof(input_string),stdin); /* read the string */
/* print the string as a whole */
printf("\nYour string printed out as a string:\n");
puts(input_string);
/* print the string by printing each element of the array */
printf("Your string printed out as individual characters:\n");
for(i=0; input_string[i] != '\0'; i++)
{
putchar(input_string[i]);
}
return 0;
}
This is the answer to the question you asked. If you actually meant something different, please clarify the question.
* Well, there are other ways, such as saving the string in dynamically allocated memory through a pointer, but using a character array would seem to suit your purposes.