CS137 Programming Principles

Taught by Victoria Sakhnini in Fall 2021.

Unlike CS students, we start learning C in our first programming course in SE. Definitely one of my favourite courses in 1A, although being a bit on the harder side for someone who’s never programmed before.

Assignments can be challenging at times: I remember one taking me an entire day to find the memory leak.

Concepts

todo

Searching Algorithms

Assignments

All assignments are to be completed in C. There were 12 in total.

It was my first time programming

Final

Since I took it during covid times, we did not have a usual written final as we normally do for CS courses. Instead, we were given a final take home assessment. First part was to complete a sorted list data structure using the given structure definition:

typedef struct lnode{
	int data;
	struct lnode *next;
}lnode
 
// list must be kep sorted in ascending order all the time. No duplicated values
// you must not use any sorting algorithms / functions
 
typedef struct {
	lnode *head; // points to the first element otherwise NULL
	int len; // number of elements
}
  • Complete the functions provided in starter.c

Second part was to code up the reversi game https://en.wikipedia.org/wiki/Reversi

  • Took me an entire day.
  • There was 7 parts, I remember the last two parts being harder