This is CS50
01111111 01000101 01001100 01000110 00000010 00000001 00000001 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000010 00000000 00111110 00000000 00000001 00000000 00000000 00000000 10110000 00000101 01000000 00000000 00000000 00000000 00000000 00000000 01000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 11010000 00010011 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 01000000 00000000 00111000 00000000 00001001 00000000 01000000 00000000 00100100 00000000 00100001 00000000 00000110 00000000 00000000 00000000 00000101 00000000 00000000 00000000 01000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 01000000 00000000 01000000 00000000 00000000 00000000 00000000 00000000 01000000 00000000 01000000 00000000 00000000 00000000 00000000 00000000 11111000 00000001 00000000 00000000 00000000 00000000 00000000 00000000 11111000 00000001 00000000 00000000 00000000 00000000 00000000 00000000 00001000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000011 00000000 00000000 00000000 00000100 00000000 00000000 00000000 00111000 00000010 00000000 00000000 00000000 00000000 00000000 00000000 ...
hello, world
input → → output
representation
1001000 1001001 100001
72 73 33 1001000 1001001 100001
H I ! 72 73 33 1001000 1001001 100001
72 73 33
input → → output
algorithms
C
#include <stdio.h> int main(void) { printf("hello, worldn"); }
#include <stdio.h> int main(void) { printf("hello, worldn"); }
#include <stdio.h> int main(void) { printf("hello, worldn"); }
#include <stdio.h> int main(void) { printf("hello, worldn"); }
C
printf("hello, worldn");
printf("hello, worldn");
printf("hello, worldn");
printf("hello, worldn");
printf("hello, worldn");
printf("hello, worldn");
printf("hello, worldn");
int counter = 0;
int counter = 0;
int counter = 0;
int counter = 0;
counter = counter + 1;
counter = counter + 1;
counter = counter + 1;
counter += 1;
counter++;
if (x < y) { printf("x is less than yn"); }
if (x < y) { printf("x is less than yn"); }
if (x < y) { printf("x is less than yn"); } else { printf("x is not less than yn"); }
if (x < y) { printf("x is less than yn"); } else { printf("x is not less than yn"); }
if (x < y) { printf("x is less than yn"); } else if (x > y) { printf("x is greater than yn"); } else if (x == y) { printf("x is equal to yn"); }
if (x < y) { printf("x is less than yn"); } else if (x > y) { printf("x is greater than yn"); } else if (x == y) { printf("x is equal to yn"); }
if (x < y) { printf("x is less than yn"); } else if (x > y) { printf("x is greater than yn"); } else if (x == y) { printf("x is equal to yn"); }
if (x < y) { printf("x is less than yn"); } else if (x > y) { printf("x is greater than yn"); } else { printf("x is equal to yn"); }
if (x < y) { printf("x is less than yn"); } else if (x > y) { printf("x is greater than yn"); } else { printf("x is equal to yn"); }
while (true) { printf("hello, worldn"); }
while (true) { printf("hello, worldn"); }
while (true) { printf("hello, worldn"); }
while (true) { printf("hello, worldn"); }
while (true) { printf("hello, worldn"); }
while (true) { printf("hello, worldn"); }
while (true) { printf("hello, worldn"); }
while (true) { printf("hello, worldn"); }
while (true) { printf("hello, worldn"); }
while (true) { printf("hello, worldn"); }
while (true) { printf("hello, worldn"); }
while (true) { printf("hello, worldn"); }
for (int i = 0; i < 50; i++) { printf("hello, worldn"); }
for (int i = 0; i < 50; i++) { printf("hello, worldn"); }
for (int i = 0; i < 50; i++) { printf("hello, worldn"); }
for (int i = 0; i < 50; i++) { printf("hello, worldn"); }
for (int i = 0; i < 50; i++) { printf("hello, worldn"); }
for (int i = 0; i < 50; i++) { printf("hello, worldn"); }
for (int i = 0; i < 50; i++) { printf("hello, worldn"); }
for (int i = 0; i < 50; i++) { printf("hello, worldn"); }
for (int i = 0; i < 50; i++) { printf("hello, worldn"); }
for (int i = 0; i < 50; i++) { printf("hello, worldn"); }
for (int i = 0; i < 50; i++) { printf("hello, worldn"); }
for (int i = 0; i < 50; i++) { printf("hello, worldn"); }
for (int i = 0; i < 50; i++) { printf("hello, worldn"); }
for (int i = 0; i < 50; i++) { printf("hello, worldn"); }
for (int i = 0; i < 50; i++) { printf("hello, worldn"); }
for (int i = 0; i < 50; i++) { printf("hello, worldn"); }
for (int i = 0; i < 50; i++) { printf("hello, worldn"); }
for (int i = 0; i < 50; i++) { printf("hello, worldn"); }
for (int i = 0; i < 50; i++) { printf("hello, worldn"); }
for (int i = 0; i < 50; i++) { printf("hello, worldn"); }
string answer = get_string("What's your name?n"); printf("%s", answer);
string answer = get_string("What's your name?n"); printf("%s", answer);
string answer = get_string("What's your name?n"); printf("%s", answer);
string answer = get_string("What's your name?n"); printf("%s", answer);
string answer = get_string("What's your name?n"); printf("%sn", answer);
string answer = get_string("What's your name?n"); printf("%sn", answer);
string answer = get_string("What's your name?n"); printf("%sn", answer);
string answer = get_string("What's your name?n"); printf("hello, %s", answer);
string answer = get_string("What's your name?n"); printf("hello, %s", answer);
string answer = get_string("What's your name?n"); printf("hello, %sn", answer);
string answer = get_string("What's your name?n"); printf("hello, %sn", answer);
string answer = get_string("What's your name?n"); printf("hello, %sn", answer);
CS50 Sandbox sandbox.cs50.io
#include <stdio.h> int main(void) { printf("hello, worldn"); }
01111111 01000101 01001100 01000110 00000010 00000001 00000001 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000010 00000000 00111110 00000000 00000001 00000000 00000000 00000000 10110000 00000101 01000000 00000000 00000000 00000000 00000000 00000000 01000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 11010000 00010011 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 01000000 00000000 00111000 00000000 00001001 00000000 01000000 00000000 00100100 00000000 00100001 00000000 00000110 00000000 00000000 00000000 00000101 00000000 00000000 00000000 01000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 01000000 00000000 01000000 00000000 00000000 00000000 00000000 00000000 01000000 00000000 01000000 00000000 00000000 00000000 00000000 00000000 11111000 00000001 00000000 00000000 00000000 00000000 00000000 00000000 11111000 00000001 00000000 00000000 00000000 00000000 00000000 00000000 00001000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000011 00000000 00000000 00000000 00000100 00000000 00000000 00000000 00111000 00000010 00000000 00000000 00000000 00000000 00000000 00000000 ...
clang hello.c ./a.out
clang -o hello hello.c ./hello
make hello ./hello
get_char get_double get_float get_int get_long get_string ...
bool char double float int long string ...
%c %f %i %li %s
floating-point imprecision
integer overflow
1 2 3
1 2 4
1 2 5
1 2 6
1 2 7
1 2 8
1 2 9
1 2 10
1 2 9
1 2 0 1
1 3 0
9 9 9
9 9 0 1
9 0 0 1
0 0 0 1
0 0 01
0 0 0
1 1 1
1 1 0 1
1 0 0 1
0 0 0 1
0 0 01
0 0 0
integer overflow
1999
1999
1900
0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 0
1 1 1 1 1 1 1 1
CS50 Lab lab.cs50.io
This is CS50

CS50 Lecture1