My motivations for not releasing sample exam solutions are:
(many years ago, when I did release some solutions) students became 'obsessed' with those solutions, to the point of rote learning those answers, in the hope that those questions would be repeated on future exam papers.
This resulted in students claiming to have been 'robbed' when questions weren't repeated, unable to comprehend what new exam questions were asking (the 'chess' question of 2019 was a good example of this) or, when seeing just a few keywords in similar questions, then answering the wrong question.
The overall result, that I have frequently seen, is students performing poorly in exams because they have not studied broadly, or from multiple information sources.
If you read the Preface from a few CS textbooks, you can sometimes see similar discussions from the authors as to why they don't release all, or only a few, answers to their end-of-chapter exercises.
The programming questions in each exam are, honestly, quite small, not 'tricky', and, as I've shown and stated in workshops, are solved by combining some standard 'templates' of code that you have all seen in workshops and has been provided in sample solutions for labs, workshops, and projects - checking arguments, opening and reading files, dynamically allocating memory, processing directories....
These are all 'things' that you should have on the tip-of-your-tongue, or at least summarised on your double-sided cheat sheet. But you're still required to be able to think on your feet, and you have a wealth of existing materials that you can drawn upon.
Thus, I don't believe a marking rubric for the programming questions would provide any value. All would be almost the same:
- provides appropriate header files
- develops appropriate types and data-structures
- correctly allocates dynamic memory
- checks for and reports errors
- develops approriate function(s) with distinct roles
- employs appropriate control structures
- the main() function checks command-line arguments and calls required function(s)
- required result/answer is reported or returned
> I feel like i cant check if my code works beacuse i dont know what to run to check it all against?
I don't understand this comment. If you really wish to check your attempt (though not required, and would take time well beyond that available in an exam), you can actually type your solutions in and execute them.