Skip to content

Videos

C Programming

Pick a topic to watch.

23 video lessons

2:29 Lesson 1 The C skeleton C works differently from the languages elsewhere on this site, and the difference shapes everything else… 2:40 Lesson 2 Types and arithmetic C will let you divide seven by two and hand you three, with no warning and no error. The type you chose … 2:29 Lesson 3 Selection in C C does not have a true-or-false type the way the other languages here do. Instead it has a rule: zero is… 2:10 Lesson 4 Loops in C C gives you two loops, and for counting they do the same job. The while version puts the start, the test… 2:02 Lesson 5 Functions in C A C function tells you everything about itself in its first line. It starts with the return type — what … 1:54 Lesson 6 Nested loops A loop inside a loop is not complicated, but the order matters and it is easy to get backwards. The oute… 2:39 Lesson 7 Arrays in C Twenty temperatures and twenty variable names is twenty chances to type the wrong one. C gives you one n… 2:34 Lesson 8 Pointers Two lessons ago something odd happened. A function that added one to an int changed nothing outside, bec… 2:28 Lesson 9 Strings in C C has no string type at all. What it has is an array of char, and everything about strings in this langu… 2:30 Lesson 10 Array algorithms Four jobs come up again and again with arrays, and they look like four different recipes. They are not. … 2:26 Lesson 11 Two-dimensional arrays A seating plan, a chessboard, a month of temperatures for six cities — these are grids, and one index is… 2:30 Lesson 12 Searching You met this one last lesson. Linear search checks the items one after another, from the front, and retu… 2:29 Lesson 13 Sorting Every sort in this lesson is built on one small move: exchanging two items. And you cannot do it in two … 2:29 Lesson 14 Recursion A recursive function is one that calls itself, and every single one has the same two parts. The base cas… 2:24 Lesson 15 Structs Some values belong together. A point is an x and a y; a rectangle is a width and a height. You can keep … 2:26 Lesson 16 Dynamic memory Every local variable you have written so far lives on the stack. It appears when the function starts and… 2:21 Lesson 17 Linked lists An array is one solid block. A linked list is the opposite: small structs called nodes, scattered anywhe… 2:30 Lesson 18 Stacks and queues The order you take things out is not a detail. It is the whole difference between an undo button and a p… 2:30 Lesson 19 Text files Everything you have written so far lives entirely in memory, so when the program ends, all of it disappe… 2:19 Lesson 20 Error handling In many languages, a function that cannot do its job will throw an exception, and somewhere up the call … 2:30 Lesson 21 Bits and binary Inside the machine an int is not a decimal number; it is a row of bits, each one a nought or a one. Read… 2:28 Lesson 22 Run-length encoding A screenshot of this page is mostly one colour, repeated. Storing that colour ten thousand times over is… 2:31 Lesson 23 Before the compiler Something runs before the compiler ever sees your file. It is called the preprocessor, and it handles ev…

Log in or create account

IGCSE, A-Level & AP