Struktury - wyszukiwanie danych z zapisem do pliku
Kod był wyświetlany 1618 razy.
    /*
  Name: Struktury - wyszukiwanie danych z zapisem do pliku
  Copyright: GPL GNU 
  Author: Michał Zając
  Date:14-04-2007 11:47:40 
  Description:
  Wprowadź przy użyciu struktur dane dotyczące n-liczby studentów (imię 
  pierwsze, imię drugie, nazwisko, numer legitymacji), zapisz je do pliku 
  lista_studentów.txt a następnie wybierz i zapisz w pliki lista_wyników.txt 
  osoby posiadające określony (wprowadzony z klawiatury) numer legitymacji 
*/

#include <iostream>
#include <fstream>
using namespace std;

struct Student                
{
char imie1[20];
char imie2[20];
char nazws[20];
int nr_legitym;
};                

int main(void)
{
    
int x;
cout<<"Podaj ilosc osob: ";
cin>>x;
if(x==0){return 1;}
Student klasa[x];

     for (int i=0;i<x;i++)
     {
            cout<<"\n\nDANE STUDENTA NUMER "<<i+1;
            cout<<"\n\nPodaj drugie imie studenta:\t";
            cin>>klasa[i].imie1;
            cout<<"Podaj drugie imie studenta:\t";
            cin>>klasa[i].imie2;
            cout<<"Podaj nazwisko studenta:\t";
            cin>>klasa[i].nazws;
            cout<<"Numer legitymacji:\t\t";
            cin>>klasa[i].nr_legitym;
     }

     ofstream plik1("lista_studentow.txt",ios::trunc);
     plik1<<"PIERWSZE_IMIE\tDRUGIE_IMIE\tNAZWISKO_STUDENTA\tNUMER_LEGITYMACJI\n\n";
     plik1.close();

     for (int i=0;i<x;i++)
     {
            ofstream plik1("lista_studentow.txt",ios::app);
            if(i>0)
            {
            plik1<<"\n";
            }
            plik1<<klasa[i].imie1<<"\t\t";
            plik1<<klasa[i].imie2<<"\t\t";
            plik1<<klasa[i].nazws<<"\t\t\t";
            plik1<<klasa[i].nr_legitym;
     }
     
     plik1.close();
             
     ofstream plik2("lista_wynikow.txt",ios::trunc);
     plik2<<"PIERWSZE_IMIE\tDRUGIE_IMIE\tNAZWISKO_STUDENTA\tNUMER_LEGITYMACJI\n\n";
     plik2.close();
     int y;
     int z;
     z=0;
               
               for (int i=0;i<x;i++)
               {
               if(i==0)
               {
               cout<<"\n\nPodaj numer legitymacji poszukiwanego studenta: ";
               cin>>y;
               }
               if(klasa[i].nr_legitym==y)
               {
               ofstream plik2("lista_wynikow.txt",ios::app);
               z=z+1;
               if(i>0)
               {
               plik2<<"\n";
               }
               plik2<<klasa[i].imie1<<"\t\t";
               plik2<<klasa[i].imie2<<"\t\t";
               plik2<<klasa[i].nazws<<"\t\t\t";
               plik2<<klasa[i].nr_legitym;
               }
               }
               
     cout<<"\nILOSC WYNIKOW: "<<z;
     plik2.close();
     cout<<"\n\n";

system("PAUSE");
cin.ignore();
getchar();
return 0;
}    
Pobierz plik tekstowy
Administrator WJL
PHP&SQL coded by NOVA-IT