After submitting week 0’s Problem Set, which is meant to be a Scratch game, here comes week 1, Introduction to C language and a comparison of Scratch to C language.
Week 1 was fun, I learned about many important background files and IDE setups required in writing C, from C header #include <studio.h> to int main(void), opening curly bracket, adding semi-colon to the end of a function and so on.
As a beginner, I also learned about C Functions, Conditions, Boolean expressions, and loop, though at first glance it looks so scary.
I was able to print my first program on the screen with printf(“Hello, world\n”);, the ‘\n’ means to include a new line.
Cs50 Week 1 Summary
I learned about writing C language, starting with the Header file #include <stdio.h>, and the main function.
we used CS50 Sandbox to write and run code, The CS50 Sandbox is a virtual, cloud-based environment with the libraries and tools already installed for writing programs in various languages. At the top, there is a simple code editor, where we can type text. Below, we have a terminal window, into which we can type commands:
We are also introduced to the Data types, Conditions, loops, Function, Boolean expression.
some example of Default Data types in C are as follows
- Int: it is used for variables that store integers.
- Long: integers with more bits, so they can count higher.
- Char: It is used for variables that store a single character.
- Float: It is used for a variable that stores a floating-point value, or real number with a decimal value.
- Double: a floating-point value with even more digits, it has 8 bytes
- Void: it’s a type and not a data type, it is used for the program when it returns nothing. Like #int main(void)
Cs50 built-in Data types for Students
- string: used for a variable that stores a collection or series of characters.
- bool: it’s a data type for boolean expression of either true/false.
- Note: To be able to use these built-in types, we need to put #include<cs50.h> at the header.
- I learned about Arithmetic operator and Relational operator
- Arithmetic operators are just like normal maths signs required for doing math Calculations e.g Addition(+), Subtraction(-), Multiplication(*), Modulus(%) and so on.
Relational Operator: like math, used for comparing
- Less than (<) or less than or equal to (<=)
- Greater than (>) or greater than or equal (>=)
- Equality operator (==) i.e equal to
- Inequality operator (!=) i.e not equal to
- Note: “=” is an assignment operator in c, it’s used to add from right to left.
Conditional Statement: conditional statement allow program to make decision.
- some examples include: if, if else, switch, ternary operator (?:)
Loop: This allow program to run over and over.
- while loop: (it’s also called infinite loop), we can also input some line of code to run until it is false.
- do while loop: it help program to run at least once, A do while loop is similar to while loop with one exception that it executes the statements inside the body of do-while before checking the condition.
- for loop: to repeat program in a specific number of times.
Command Line Arguments: these are arguments or input used in contrast to Graphical User Interface.
- ls – to list file or folder in the present directory
- cd – to change directory
- mkdir – to make a new directory
- cp – to copy from file or folder in a directory
- rm – to remove a particular directory
- mv – to move a file or folder within one or more directory
- I Learned about including header to program in order for it to execute successfully, for example, without including #Include<stdio.h> printf(); function won’t work
- Also learn about Data types, Loop, function, and Operators.
- learn about doing some basic calculations like addition, subtraction, multiplication, and others with C.
- Memory, Imprecision, and Overflow.
- Using Clang to compile program, but make is more friendly.
- You need to use the correct ampersand for data types….like %i for int.
Week 1 wasn’t that cool, since it was purely text and not that friendly like Scratch, I really made a lot of mistakes, It was my first of writing a program after writing my first Hello World, I feel so ecstatic, doing some basic calculations also unveil my eyes and motivated me.
Thanks to David. J Malan, he is the best of all time, he makes things easier for his students. If you haven’t gone through week 1, then you really need it. It’s the basics of programming with C language.
Thanks for reading….if you’ve taken Week 1 of the cs50 Harvard introductory course, do share your thoughts in the comment box below.