Fişierul intrare/ieşire:lab-10-03.in, lab-10-03.outSursăad-hoc
AutorAdăugată demihneadbMihnea Dobrescu-Balaur mihneadb
Timp execuţie pe test1 secLimită de memorie16384 kbytes

Vezi solutiile trimise

Problema 3

Să se definească tipul structură MATERIA care conţine cămpurile:

  • nume - şir de 15 caractere
  • ore_curs - intreg
  • tip_examen - tip enumerare, putând avea valorile C, S, A (colocviu, examen de semestru sau de an)

Scrieţi funcţia citire_MAT, care citeşte informaţiile despre o variabilă de tip MATERIA.

Se va face validarea tuturor câmpurilor:

  • nume - conţine doar litere sau blancuri
  • ore_curs - întreg strict pozitiv. OBS. Se presupune ca utilizatorul poate introduce doar un numar intreg, pe care il vom verifica ca este pozitiv!
  • tip_examen - doar unul din caracterele de mai sus: C, S, A

Observatie: Citirile se vor face cu gets sau fgets, deoarece numele materiei poate contine spatii. Urmatoarele citiri, cat si cele precedente citirii numelui materiei se vor face tot cu gets/fgets deoarece daca folosim scanf raman caractere nescoase din buffer-ul de tastatura (new line de exemplu)!
Hint: atoi pt transformare in numar intreg

Definiţi tabloul PROGRAMA de MAX elemente de tip MATERIA, MAX fiind o constantă predefinită.

Scrieţi funcţia citire_PROGRAMA, de tip void, care iniţializează tabloul PROGRAMA, prin apelul funcţiei citire_MAT.

Scrieţi funcţia afişare care primeşte ca parametru un caracter, un întreg şi tabloul PROGRAMA şi tipăreşte informaţiile despre materiile din PROGRAMA care au tip_examen corespunzător caracterului şi ore_curs egal cu întregul primit.

Scrieţi un program care apelează funcţiile de mai sus.

Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?