In your case you need just one interger value be saved and loaded.
In your scene load method, use these lines. Put your first game scene index instead of 2.
if (PlayerPrefs.GetInt ("current_level") == null)
PlayerPrefs.SetInt ("current_level", 2);//assuming level 0 is splash screen, level 1 is main menu and level 2 is first scene. Change as your need
On every scene use the below method in an active object.
PlayerPrefs.SetInt ("current_level", Application.loadedLevel);
PlayerPrefs is not suggested in large scale data handling. Use binaryformatter, xmlserializer etc for that purposes. You will get more control over data.
If you are not using
Application.Quit () for game exit then use it. Or you can put the line in
OnApplicationQuit () to
Start () on an active object in all scene. That way even if you don't quit the game, just going into the scene will be saved.
Switch to JS to see how to write JS function which is written in C#