Basic Image stegnographer v 0.1

The following source and explanation is a bit oversimplified. But I am still learning about steganography.

A bitmap contains a header section(first 54 bytes) and image data. The header stores various information about the image's attributes, so we'll not mess with it. The remaining bytes contains the image data. So we can start hiding our message from 55th byte (it is done at the 100th byte in the source.)

Subsequent versions of Basic Image stegnographer will be GUI, with support of more file formats and steganalysis(determining the presence of hidden info in the image, and if present, retreive it).

Usage- just compile and run!
Code:
/*
Basic Image stegnographer v 0.1
basImStego.c

Inserts and retrives a small string from a 24-bit bitmap image

coded by - shakuni
*/

#include <stdio.h>

void showStartingNote();
int showMenu();
int encodeMsg();
int decodeMsg();
void showEndingNote();

int menuChoice=0;
char imgFileName[50];
char msgToencode[100];
char decodedMsg[100];
int status=0;

int main(void)
{
    showStartingNote();
    while(1)
    {
    menuChoice=showMenu();
    
    switch (menuChoice)
    {
    case 1:
         status=encodeMsg();
         break;
    case 2:
         status=decodeMsg();
         break;
    case 3:
         showEndingNote();
         return;
    default:
         printf("Invalid choice !\n\n");
         continue;
    }
    }
    return 0;
}

void showStartingNote()
{
printf("%s"," Welcome to Basic Image stegnographer v 0.1 by shakuni \n");
printf("%s"," =====================================================\n\n");
printf("%s","Please note that-\n");
printf("%s","-----------------\n\n");
printf("%s","*The current version(version 0.1) only supports\n" 
            " 24-bit bitmap images for data hiding purpose.\n\n");
            
printf("%s","*The current version can only find information hidden\n"
            " by itself, that is, it can't steganalyse images yet.\n\n\n");   
}

int showMenu()
{
printf("%s","Now, what would you like to do?\n");
printf("%s","1. Hide some message in a bitmap image.\n");
printf("%s","2. Retrive message hidden in an bitmap image.\n");
printf("%s","3. Leave program.\n\n");
printf("%s","Enter your choice(Enter the choice as a number)  :");

scanf("%d",&menuChoice);
return menuChoice;
}

int encodeMsg()
{
    FILE *fp=NULL;
    
    printf("%s","Enter the name of bitmap image  :");
    scanf("%s",&imgFileName);
    fflush(stdin);
    
    printf("%s","Enter the message to Encode into the image :");
    gets(msgToencode);
    
    fp=fopen(imgFileName,"r+");
    if(fp!=NULL)
    {
         fseek(fp,100L,SEEK_SET);
         fprintf(fp,msgToencode);
         fclose(fp);
         printf("%s","Message successfully encoded in the image.\n\n");
    }
    else
    {
         printf("Failed to open %s",imgFileName);
         return 1;
    }
}


int decodeMsg()
{
    FILE *fp=NULL;
    
    printf("%s","Enter the name of bitmap image  :");
    scanf("%s",&imgFileName);
    fflush(stdin);
    
    fp=fopen(imgFileName,"r+");
    if(fp!=NULL)
    {
         fseek(fp,100L,SEEK_SET);
         fgets(decodedMsg,100,fp);
         fclose(fp);
         printf("The message encoded into the image is \n%s\n\n",decodedMsg);
    }
    else
    {
         printf("Failed to open %s",imgFileName);
         return 1;
    }
}

void showEndingNote()
{
printf("%s","\n\n* Thank you for using Basic Image stegnographer v 0.1 .\n");
printf("%s","* The future versions will support all image formats.\n");
printf("%s","* The future versions will support steganalysis functions.\n");
printf("%s","* Next version will be GUI.\n");
getch();
}