Limbaje de programare: Tema 11

Învățați tipare de bază de lucru cu tablouri, șiruri, pointeri.

De rezolvat și predat la laboratorul din săptămâna 11

1. Scrieți un program care primește pe linia de comandă un șir de forma M-N (unde M și N sunt două numere, M ≤ N), și un nume de fișier, și afișează din fiecare linie a fișierului caracterele de la poziția M la N inclusiv (numărătoarea începe de la 1).

2. Scrieți un program care verifică dacă un fișier cu numele dat pe linia de comandă este de tip bitmap: primii doi octeți trebuie să fie caracterele BM, iar următorii 4 octeți (cel mai puțin semnificativ întâi) reprezintă, pe 32 de biți, dimensiunea fișierului. Puteți folosi următoarea funcție care determină dimensiunea unui fișier, poziționându-se la sfârșitul său și interogând apoi poziția.

Programul va trebui să deschidă fișierul în mod binar. Va citi primii doi octeți (fie individual, ca și caractere, fie folosind funcția fread) și va verifica dacă sunt B și M. în caz contrar, programul îsi va încheia execuția afișând un mesaj că fișierul nu începe cu caracterele dorite. În caz afirmativ, programul va citi în continuare din fișier 4 octeți reprezentând un întreg fără semn (ca în exemplul rezolvat la curs). Programul va verifica dacă numărul astfel citit coincide cu dimensiunea reală a fișierului (obținut cu funcția furnizată) și va afișa în caz contrar un mesaj de eroare și valorile celor două dimensiuni diferite.


Marius Minea
Last modified: Tue Dec 4 16:30:00 EET 2012