مبانی کامپیوتر و برنامه سازی پاییز ۹۷
Fundamentals of Programming - Fall 2018
Instructors
Amin Nikanjam
Behrooz Nasihatkon
References
C How to Program (Harvey Deitel)
The C Programming Language (Brian Kernighan, Dennis Ritchie)
C Tutorial at TutorialsPoint
Teaching Assistants
Soheil Changizi
Alireza Kavian
Week
1
Topic
Introduction to Computer Programming and Applications
Basic Computer Architecture
Material
Lecture 1 - Slides
Lecture 2 - Slides
Week
2
Topic
Binary numbers, Integer number representation,
Hex numbers, unsigned integer, sign bit,
one's complement, two's complement
Floating point representation
Material
Lecture 3 - Slides
Lecture 4 - Slides
Week
3
Topic
Introduction to algorithms and flowcharts
Material
Lecture 5 - Slides
Lecture 6 - Slides
Week
4
Topic
More on flowcharts
Introduction to C
Arithmetics in C
Material
Lecture 7 - Slides
Lecture 8 - Slides
Week
5
Topic
Decision Making
Loops
Material
Lecture 9 - Slides
Lecture 10 - Slides
Week
6
Topic
printf & scanf
Operators and precedence
Switch-case
Logical Operators
Material
Lecture 11 - Slides
Lecture 12 - Slides
Week
7
Topic
C Functions
C Standard Library
Math functions
Writing functions
Function prototypes
C preprocessor
Random number generation
Material
Lecture 13 - Slides
Lecture 14 - Slides
Week
8
Topic
variable scopes, recursion, call stack
static variables
Tower of Hanoi
Material
Lecture 15 - Slides
Lecture 16 - Slides
Midterm Exam (Persian) - امتحان میانترم
Midterm Exam - Key جوابهایمیانترم
Week
9
Topic
C arrays
C characters, ASCII coding, C strings
Passing arrays to functions
Material
Lecture 17 - Slides
Lecture 18 - Slides
Week
10
Topic
Sorting arrays, bubble sort
Searching arrays, linear and binary search
Material
Lecture 19 - Slides
Lecture 20 - Slides
Week
11
Topic
2D arrays
Matrix multiplication
ND arrays
Material
Lecture 21 - Slides
Lecture 22 - Slides
Week
12
Topic
Introduction to Pointers
Pointers and Arrays
Pointer arithmetic
Material
Lecture 23 - Slides
Lecture 24 - Slides
Week
13
Topic
Arrays of pointers
pointer to functions
Material
Lecture 25 - Slides
Lecture 26 - Slides
Week
14
Topic
Character & String processing
Streams
Material
Lecture 27 - Slides
Lecture 28 - Slides
Week
15
Topic
C structures
Bit Operations
Material
Lecture 29 - Slides
Lecture 30 - Slides
Week
16
Topic
File processing
Dynamic memory allocation
Material
Lecture 31 - Slides
Lecture 32 - Slides
Final Exam (Persian) امتحان پایانترم
Final Exam (Persian) امتحان پایانترم