I am not sure that you are going to bind the result in any data displaying control like GridView/Repeater or you are going to do some manipulation on the result.
But if you are going with first option then you will need to display 4 columns i.e CategoryId, CategoryCode, MarksThere, ScalePoint in the tabular format. So as per your required condition if MarksThere has 0 then ScalePoint should be displayed other wise not.
In that case you must need a header with ScalePoint. You can place dash, nil or any other suitable text in that column where MarksThere are 1.
So for this option you can simply write a query like below.
SELECT CategoryId, CategoryCode, MarksThere, CASE WHEN MarksThere = 0 THEN Convert(varchar,ISNULL(ScalePoint,0)) ELSE '-' END AS ScalePoint FROM TableName
Hope it helps.