I am using scan to generate the PEC, but at the end point of scan, the resultant energy is different when I do single point calculation at the last point (25 Angstrom in this file). I don't know why is this.
Single point calculations don't optimize the structure ( Don't change the conformation of the molecule), But in PES Scan your molecule undergoes different conformations and hence you'll get different energies.
Optimize the structure and then perform the energy calculation if your molecule is not big enough or you're not using high level of theory.
In a relaxed scan, whenever a new step is to be done, it takes as initial guess for the MOs (and therefore for the wave function) that of the previous step. When describing dissociations, this can lead to incorrect results as the initial guess came from a bonding wave function.
What you observed came from the fact that, when you did a single-point calculation, what you really did was to generate a freshly new initial guess, probably more correct (the energy provided from the single-point was lower than that of the scan, I would expect).
Try to repeat the scan using the keyword guess=(always,mix) and an unrestricted method, that should help you getting a proper description of the dissociation.