Програмиране на С

(30 часа лекции + 20 часа упражнения)
Понеделник и четвъртък, 17:30, Starting from Sep 28 the course will take place in Earth People Hotel, room Musala, floor 1.

Лекции
Дата
Упражнения
Дата
1
Въведение - 1
Chapter 1 - A Tutorial Introduction
1.1 Getting Started
1.2 Variables and Arithmetic Expressions
(допълнително)
7.09
п


2
Въведение - 2
Chapter 1 - A Tutorial Introduction
1.3 The for statement
1.4 Symbolic Constants
1.5 Character Input and Output
1.5.1 File Copying
1.5.2 Character Counting
1.5.3 Line Counting
1.5.4 Word Counting
1.6 Arrays
1.7 Functions
1.8 Arguments - Call by Value
1.9 Character Arrays
1.10 External Variables and Scope
(допълнително)
10.09
ч
У1
Unix
14.09
п



У2
Въведение
17.09
ч
3
Типове, оператори и изрази - 1
Chapter 2 - Types, Operators and Expressions
2.1 Variable Names
2.2 Data Types and Sizes
2.3 Constants
2.4 Declarations
2.5 Arithmetic Operators
2.6 Relational and Logical Operators
(допълнително)
24.09
ч


4
Типове, оператори и изрази - 2
Chapter 2 - Types, Operators and Expressions
2.7 Type Conversions
2.8 Increment and Decrement Operators
2.9 Bitwise Operators
2.10 Assignment Operators and Expressions
2.11 Conditional Expressions
2.12 Precedence and Order of Evaluation
28.09
п
У3
Типове, оператори и изрази
2.1, 2.2, 2.4, 2.9, 2.10

1.10
ч
5
Опиратори за управление - 1
Chapter 3 - Control Flow
3.1 Statements and Blocks
3.2 If-Else
3.3 Else-If
3.4 Switch
5.10
п


6
Оператори за управление - 2
Chapter 3 - Control Flow
3.5 Loops - While and For
3.6 Loops - Do-While
3.7 Break and Continue
3.8 Goto and labels
8.10
ч
У4
Оператори за управление
12.10
п
7
Функции и структура на програмата - 1
Chapter 4 - Functions and Program Structure
4.1 Basics of Functions
4.2 Functions Returning Non-integers
4.3 External Variables
4.4 Scope Rules
4.5 Header Files
15.10
ч
У5
Функции
Домашно: Да се напише програма,
която отпечатва честотна диаграма
на срещанията на буквите от латинската
азбука в даден текст.
(изпращайте текста на програмата на
nkirov@nbu.bg)
19.10
п
8
Функции и структура на програмата - 2
Chapter 4 - Functions and Program Structure
4.6 Static Variables
4.7 Register Variables
4.8 Block Structure
4.9 Initialization
4.10 Recursion
4.11 The C Preprocessor
4.11.1 File Inclusion
4.11.2 Macro Substitution
4.11.3 Conditional Inclusion
(допълнително)
22.10
ч
У6
Структура на програмата
28.10
п
9
Указатели и масиви - 1
Chapter 5 - Pointers and Arrays
5.1 Pointers and Addresses
5.2 Pointers and Function Arguments
5.3 Pointers and Arrays
5.4 Address Arithmetic
5.5 Character Pointers and Functions
5.6 Pointer Arrays; Pointers to Pointers
2.11
ч


10
Указатели и масиви - 2
Chapter 5 - Pointers and Arrays
5.7 Multi-dimensional Arrays
5.8 Initialization of Pointer Arrays
5.9 Pointers vs. Multi-dimensional Arrays
5.10 Command-line Arguments
5.11 Pointers to Functions
5.12 Complicated Declarations
caesar.c, gmin.c, int_char.c, ptfun.c, si.c, test_ap.c
5.11
п



11
Структури - 1
Chapter 6 - Structures
6.1 Basics of Structures
6.2 Structures and Functions
6.3 Arrays of Structures
6.4 Pointers to Structures
struct1.c, struct2.c, struct3.c, struct10.c
9.11
п
У7
Структури

(занятието се отменя)
12.11
ч
12
Структури - 2
Chapter 6 - Structures
6.5 Self-referential Structures
6.6 Table Lookup
6.7 Typedef
6.8 Unions
6.9 Bit-fields
emp1.c emp2.c emp5.c
16.11
п
У8
Струкури
19.11
ч
13
Вход и изход - 1
Chapter 7 - Input and Output
7.1 Standard Input and Output
7.2 Formatted Output - printf
7.3 Variable-length Argument Lists
7.4 Formatted Input - scanf
7.5 File Access
catcat.c files.c lower.c ps.c
23.11
п


14
Вход и изход - 2
Chapter 7 - Input and Output
7.6 Error Handling - Stderr and Exit
7.7 Line Input and Output
7.8 Miscellaneous Functions
7.8.1 String Operations
7.8.2 Character Class Testing and Conversion
7.8.3 Ungetc
7.8.4 Command Execution
7.8.5 Storage Management
7.8.6 Mathematical Functions
7.8.7 Random Number generation
getline.c concat.c str.c
26.11
ч
У9
Вход и изход
employee1.c
30.11
п
15
У9 - продължение

3.12
ч
У10 - Общи задачи
7.12
п

У10 - продължение
Подготовка за изпита.
10.12
ч
Практически изпит и тест 14.12
п

Браян В. Керниган, Денис М. Ричи, Програмният език C,  ЗеСТ Прес, 2008, ISBN 954911659

Brian W. Kernighan, Dennis M. Ritchie, The C Programming Language, 2nd Edition, Prentice Hall PTR; 2 edition (April 1, 1988) [pdf] [pdf]


C Programming Language — Learn To Solve It
This is the C programming language section. Our intention is to present the programs of Kernighan and Ritchie here with explanation. If you like that book or like to learn C, you may find this interesting.

The C Programming Language Answers To Exercises


Николай Киров, 19.09.2015, последни промени на 15.12.2015