Sunteți pe pagina 1din 1

Probleme propuse tipul structur

1. Fie declaraia:
struct lista
int nr;
float nota; ;
S se scrie o funcie care s aib ca parametru un tablou cu maximum 100 de elemente de tip lista i s returneze ca
rezultat valoarea cmpului nr asociat celei mai mari valori a cmpului nota din tablou.
2. Se consider un tablou de elemente ce conin informaii despre activitatea de producie a mai multor firme. Fiecare
element memoreaz urmtoarele informaii: codul numeric al firmei, codul numeric al produsului, cantitatea produs.
S se scrie o funcie care, folosind ca parametri tabloul i o valoare numeric x, furnizeaz ca rezultat numrul de
firme care produc cea mai mare cantitate de produse al cror cod numeric este x.
3. Definii un tip structur pentru descrierea unui moment de timp exprimat prin valorile or, minute, secunde. Scriei
apoi o funcie care s calculeze timpul scurs ntre dou momente de timp cunoscute. De exemplu, de la momentul
3:45:15 pn la momentul 9:44:03 au trecut 5 ore, 58 de minute i 48 de secunde. Atenie la momentele de timp
situate nainte i dup miezul nopii !
4. Definii un tip structur (eventual structur ierarhizat) pentru descrierea unui moment prin dat calendaristic (zi,
lun, an) i moment de timp (or, minute, secunde). Scriei apoi o funcie care la fiecare apelare s actualizeze
momentul de timp curent prin incrementare cu o secund i o funcie care s realizeze o operaie similar, dar prin
incrementare cu o zi a datei calendaristice. Cele dou funcii vor fi utilizate de o a treia astfel: se va apela funcia de
actualizare a momentului de timp i, dac n acest mod se depete miezul nopii, se va apela a doua funcie pentru a
se trece la ziua urmtoare. Rezultatul final va reprezenta structura complet, actualizat.
5. Definii un tip structur convenabil pentru descrierea unei figuri geometrice plane. De exemplu, structura va conine
denumirea formei figurii geometrice i:
- pentru un cerc : raza;
- pentru un dreptunghi : dimensiunile celor dou laturi.
Scriei apoi o funcie care s aib ca rezultat aria unei figuri geometrice date i folosii-o ntr-un program.
6. S se defineasc un tip structur care s permit declararea de variabile numere complexe i cu ajutorul acesteia s se
simuleze n limbajul C toate operaiile asupra numerelor complexe: adunarea, scderea, nmulirea, mprirea,
calcularea modulului, a argumentului, a prii reale i a prii imaginare. De asemenea, s se scrie funcii care s
citeasc de la tastatur o valoare complex i, respectiv, s afieze pe ecran o astfel de valoare.
7. Pentru n studeni se citesc: numele i dou note la Programarea calculatoarelor. S se calculeze media fiecrui
student. S se afieze studenii n ordinea descresctoare a mediilor, iar pentru medii egale, n ordine alfabetic
(lexicografic).
8. La un concurs de gimnastic trebuie nregistrate datele a n concureni. Pentru fiecare concurent se reine: numele,
prenumele, vrsta, rezultatele obinute la 6 probe (punctaje<=100) i punctajul general (acesta se calculeaz, prin
nsumarea punctajelor obinute la cele 6 probe). Realizai clasamentul concurenilor i stabilii cine primete premiile
I, II i III. Considerai c, n cazul n care mai muli concureni au punctaje egale, toi vor obine acelai premiu iar
afiarea informaiilor despre ei (la un acelai premiu) se va face n ordine cresctoare, dup vrst (ca s fie motivai
suplimentar cei mai tineri dintre participani).
9. De la tastatur, se citesc datele angajailor unei firme: nume, prenume, data naterii, data angajrii, funcia, numr de
telefon, salariu. La citire, efectuai verificrile necesare pentru ca datele s fie corecte. Se cere:
a) s se afieze angajaii n ordinea alfabetic a funciei, iar n cadrul aceleiai funcii n ordinea
descrescatoare a salariului;
b) s se identifice (dac exist) i s se afieze angajaii care au exact aceeai vrst, dar au salarii diferite;
c) s se identifice (dac exist) angajaii cu acelai prenume ale cror numere de telefon ncep cu exact
aceleai 4 cifre (se presupune ca numerele de telefon sunt formate din 10 cifre).