Zad. 1. Napisz program, który będzie symulował klasę studentów z ich ocenami. Program powinien wczytać pięciu studentów o następujących właściwościach:
a następnie odpowiadał na pytania o ocenę z danego przedmiotu podając najpierw numer studenta a następnie numer przedmiotu.
Rozwiązanie:
#include<iostream>
#define klasa 5
using namespace std;
struct student{ //stworzenie własnego typu o nazwie student
char imie[25];
//oceny
int polski, matematyka, informatyka, biologia;
};
int main()
{
student A[klasa]; //stworzenie tablicy 5 studentów
//wczytanie kolejnych studentów oraz ich ocen
for(int i=0;i<klasa;i++)
{
cout<<"Podaj imie studenta nr "<<i+1<<": ";
cin>>A[i].imie;
cout<<"Podaj ocenę z j. polskiego: ";
cin>>A[i].polski;
cout<<"Podaj ocenę z matematyki: ";
cin>>A[i].matematyka;
cout<<"Podaj ocenę z informatyki: ";
cin>>A[i].informatyka;
cout<<"Podaj ocenę z biologii: ";
cin>>A[i].biologia;
}
int q;
cout<<"Podaj liczbę zapytań: ";
cin>>q;
int nr, przedmiot;
//wybieranie danych z bazy
while(q--)
{
cout<<"Podaj nr studenta [1.."<<klasa<<"]: ";
cin>>nr;
--nr;
if(nr<0||nr>=klasa)
{
cout<<"W bazie nie ma studenta o takim numerze!"<<endl;
continue;
}
cout<<"Podaj nr przedmiotu [0..3]: ";
cin>>przedmiot;
if(przedmiot<0||przedmiot>3)
{
cout<<"Podałes niewlasciwy przedmiot!"<<endl;
continue;
}
switch(przedmiot)
{
case 0:
cout<<"Student: "<<A[nr].imie<<", ocena z j. polskiego: "
<<A[nr].polski<<endl;
break;
case 1:
cout<<"Student: "<<A[nr].imie<<", ocena z matematyki: "
<<A[nr].matematyka<<endl;
break;
case 2:
cout<<"Student: "<<A[nr].imie<<", ocena z informatyki: "
<<A[nr].informatyka<<endl;
break;
case 3:
cout<<"Student: "<<A[nr].imie<<", ocena z biologii: "
<<A[nr].biologia<<endl;
break;
}
}
return 0;
}