Correct Answer: D, the change is applied in memory only, the change does not persist as the database can't write to the pfile
The default SCOPE option, when you start the instance using a PFILE, is MEMORY (as well as the only scope option you can use with a pfile). If scope is omitted the default scope option is used instead. The SCOPE clause is optional and not mandatory when changing the value of a parameter!
A is wrong, as the pfile is a read only file for the database so it can't write to it. Changes to the pfile have to be done manually by changing it directly using f.e. vi on unix systems.
B is wrong, same reason as for why answer A is wrong
C is wrong, as mentioned above, when omitted the scope clause defaults to MEMORY when using a pfile.
Not related to that question but the more you know: When starting the database using a spfile you have three options for the scope (MEMORY, SPFILE and BOTH). Default value is BOTH.