Whenever you turn in a programming assignment, I'll assess how well you've demonstrated each of these skills, on a scale from 0="didn't use" to 3="fluent, comfortable, idiomatic".
I'll compute the maximum score for each skill, so if you demonstrate a particular C skill in one program, the fact that it isn't needed in the next C program won't hurt you.
In each language, I've listed "essential", "important", and "obscure" skills. Each "essential" skill will be weighted 3, each "important" skill 2, and each "obscure" skill 1. For example, if in C you demonstrated fluency with pointer variables in C (a 3 in an essential skill) and marginal command of enumerated types (a 1 in an important skill), you would have earned 11 points for the C portion of the course: 3*3 + 1*2.