Vad är det du inte fixar?Funktioner
Detta exempel ger praktisk övning i att skriva funktioner som hanterar vektorer och strukturer. Här följer ett programskelett. Komplettera det genom att utforma de funktioner som beskrivs.
#include <iostream>
using namespace std;
const int SLEN = 30;
struct student {
char fullname[SLEN];
char hobby[SLEN];
int coplevel;
};
//getinfo() har två argument: en pekare till det forsta elementet i
//en vektor avstudent strukturer och en int som
//representerar antalet element i vektorn.
//Funktionen behandlar och lagrar data om studenter.
//Det avslutas om vektorn blir full
//eller ocm en blankrad påträffas istället för ett namn.
// Funktionen returnerar det faktiska antalet fyllda element.
int getinfo(student pa[], int n);
//display1() tar strukturen student som argument och visar innehållet
void display1(student st);
//display2() tar adressen till en student struktur som argument
//och visar strukturens innehåll.
void display2(const student * ps);
//display3() tar adressen till det första elementet i en vektor
//bestående av student strukturer och antal vektorelement bestående
// som argument visar strukturens innehåll
void display3(const student pa[], int n);
int main()
{
cout<< "Skriv in klassens storlek: ";
int class_size;
cin>> class_size;
while (cin.get() != ´\n´)
continue;
student * ptr_stu = new student[class_size];
int entered = getinfo(ptr_stu, class_size);
for (int i = 0; i < entered; i++)
{
display1(ptr_stu[i]);
display2(&ptr_stu[i]);
}
display3(ptr_stu[i]);
display2(&ptr_stu[i]);
cout<<"Färdig\n";
}
Denna uppgift finns i min bok. Snälla hjälp mig, är det någon som har en lösning till denna uppgift.Kommentera gärna er kod.
Tacksam för hjälp! :-DSv: Funktioner
Om du har kommit så långt i din bok vet du väl hur du får fram de olika medlemmarna i strukturen, och cout kan du väl använda?
Den generella principen är
void display1(student st)
{
cout << st.FULLNAME;
//mer utskrifter
}
/Niklas Jansson