Limbaje de programare
Curs, anul I ETC seria B, sem. I 2012/2013 (Curs anterior)
Cadru didactic: Marius Minea, marius@cs.upt.ro
Laborator: Gabriela Bobu, Casandra Holotescu, Alexandru Iovanovici
Curs: luni 8-11, D1
Consultații: marti 14-16, B528a; joi, 16-18 B426 (la cerere)
Modul de evaluare
Situația finală a notelor după prezentările 1-3
Materiale de curs
- Introducere și recursivitate
Note de curs: Introducere, Recursivitate
Tema 1 (noțiuni de la cursul 1)
- Recursivitate. Citirea de caractere
Note de curs
radacina patrata, numere si cifre, citire de numere, fractal recursiv (triunghiul lui Sierpiński)
Tema 2 (noțiuni de la cursul 2)
Tema 3 (pentru laboratorul 3)
- Decizia. Atribuirea. Iterația.
Exemple: an bisect, suma numerelor, tipărirea de numere, filtru HTML
Note de curs: decizie,
variabile/atribuire,
iterație
Tema 4 (pentru laboratorul 4)
- Prelucrări iterative
Exemple cu numarare, factori primi, numărare cuvinte (varianta 1, 2, 3, 4), cuvinte pe linie, eliminare comentarii
- Operatori pe biți. Tablouri
Tiparirea in baza 2 si 16
Tema 6 (pentru laboratorul 6)
- Tablouri. Șiruri de caractere. Matrice
Exemple: suma din tablou, media elementelor ≥ 5, caută factor prim, numără apariții de caractere, caută subșir
Tema 7 (pentru laboratorul 7)
- Funcții de intrare/ieșire
Exemple: text cu nume si note,
extragerea de etichete XML
Tema 8 (pentru laboratorul 8)
- Exemple: suma cifrelor in baza 16,
micșorarea la jumătate a unei imagini,
numărarea rândurilor dintr-un tabel HTML.
Folii de curs: Pointeri
Exemple: citire cu prompt, interschimbare, conversie secunde
- Pointeri (continuare). Alocare dinamică
Exemple: suma argumentelor, sortare de tablou, citire/sortare de text
Tema 10 (pentru laboratorul 10)
- Fișiere. Structuri
Tema 11 (pentru laboratorul 11)
Exemple: Afișare caracter cu caracter, numarare cuvinte, micșorarea la jumătate a unei imagini,
numere raționale, situație studenți
Tema 12 (pentru laboratorul 12)
- Recapitulare. Citire formatată de la intrare, și prelucrarea cu format a unei linii citite. Crearea unui tablou de referințe la structuri
Lucrări de laborator
- Introducere
- Decizie. Recursivitate
- Recursivitate. Citirea de caractere
- Prelucrări iterative
- Testul 1
- Operatori pe biți
- Tablouri și șiruri de caractere
- Funcții de intrare/ieșire
- Testul 2
- Pointeri. Alocare dinamică
- Fișiere
- Structuri
Compilatoare și medii de programare
Compilatorul gcc și o varietate de editoare, inclusiv emacs fac parte din orice distribuție Linux. Încercați de exemplu Ubuntu.
Pentru a lucra cu gcc sub Windows, puteți folosi distribuția bazată pe gcc propusă aici.
Puteți încerca Code::Blocks sau
Dev-C++, bazate pe MinGW, sau sa lucrați sub Cygwin,
Bibliografie
Materiale de referință
- Standardul curent pentru limbajul de progamare C: ISO/IEC 9899:201x.
Ultima versiune disponibilă public.
Referința cea mai autoritativă, de consultat în caz de ambiguitate.
Cărți
- Brian Kernighan, Dennis Ritchie. Limbajul C. Editura Teora, 2000.
- Valentin Cristea, Cristian Giumale, Eugenia Kalisz, Alexandru
Pănoiu. Limbajul C standard. Editura Teora, 1992
- Liviu Negrescu. Limbajul C Editura Libris, Cluj-Napoca,
1992
- Ioana Șora, Doru Todinca. Introducere în programarea
calculatoarelor. Editura Politehnica, 2003
Cursuri online
-
C Programming. Brian Brown, Central Institute of Technology, NZ.
Conține și teste interactive.
- C Programming. Peter Burden, University of Wolverhampton, UK. Conține și exerciții.
- C Programming
Steven Summit, Experimental College, University of Washington, USA.
-
Introduction to C Programming, University of Leicester, UK.
- C Programming.
Steve Holmes, University of Strathclyde, UK.
- C Language Tutorial. Drexel University, USA. O introducere concisă.
marius@cs.upt.ro
Last modified: Thu Feb 14 13:20:00 EET 2013