informatyka laborki sciąga, Polibudos, 1rok, informayka


0.Napisać program, który wyświetli na ekranie zawartość pliku

usuwajac z niego spacje

1.Napisać program , który

a) zapisze do pliku textowego liczbę int w osobnej lini oraz liczbę

float oraz napis w jednej lini

b) odczyta tak zapisane dane z pliku

void main (void)

{

char c;

int i=6;

float f=65.6544;

char d[6]="zapis";

FILE *ff;

ff=fopen("zapis.txt","w");

{

fprintf(ff,"%d\n",i);

fprintf(ff,"%2.4f ",f);

fprintf(ff,"%s",d);

}

fclose(ff);

ff=fopen("zapis.txt","rt");

if(ff!=NULL)

{

while((c=getc(ff))!=EOF)

printf("%c",c);

while((c=getc(ff))!=EOF)

while(getc(ff)!='\n')

fscanf(ff,"%d",&i);

while(getc(ff)!=' ')

fscanf(ff,"%f",&f);

{

for(int i=0;i<6;i++)

fscanf(ff,"%c",&d[i]);

}

}

printf("\n\n%d %f\n",i,f);

for(int i=0;i<6;i++)

printf("%c",d[i]);

printf("nie ma pliku");

fclose(ff);

getch();

}

2.Zadeklarować strukturę, która przechowuje następujące dane

a)nazwisko i wiek w pełnych latach

b)zainicjowac w lini komend tablicę 3 takich struktur

c)zapisać strukturę do pliku w ten sposób, że w pierwszej linii

będzie ilośc struktur, natomiast pola poj. struktury

są zapisane w pojedynczej lini np.

2

kowalski 25

nowak 19

-------------------------------

#include<stdio.h>

#include<conio.h>

struct osoba

{

char naz[25];

int wiek;

};

//odczyt osoby z klawiatury

osoba wczytZklaw()

{

printf("\npodaj nazwisko i wiek ");

osoba o;

scanf("%s %d",o.naz,&o.wiek);

return o;

}

//wyswietlanie na ekranie

void wyswOsoba(osoba r)

{

printf("\nnazwisko:%s wiek:%d",r.naz,r.wiek);

}

//zapis na koniec pliku

void zapisNaKoniec(char nazwa_zbioru[], osoba r)

{

FILE *ff;

ff=fopen(nazwa_zbioru,"ab");

if(ff!=NULL)

{

{

fwrite(&r,sizeof(osoba),1,ff);

}

fclose(ff);

}

else

printf("ni ma pliku");

}

//wyswietlanie pliku

void wyswPlik(char *nazwa_pliku)

{

FILE *ff;

osoba r;

ff=fopen(nazwa_pliku,"rb");

if(ff!=NULL)

{

while(!feof(ff))

{

if(fread(&r,sizeof(osoba),1,ff)==1)

printf("\n%s\n%d",r.naz,r.wiek);

}

}

else

printf("ni ma pliku");

fclose(ff);

//wywołac wysw osoba

}

//odczytuje z pliku i wywietla zadany rekord

void odczyt(char *nazwa_pliku, int nr)

{

}

#define nazwa "ala.dat"

int main(void)

{

osoba o;

char opcja;

do{

printf("\n1.Zapis\n");

printf("2....\n");

printf("3.Wyświetlania\n");

printf("0.Koniec\n");

printf("podaj opcje:\n");

opcja = getch();

switch( opcja){

case '1': o = wczytZklaw();

zapisNaKoniec(nazwa,o);

break;

case '2':break;

case '3':wyswPlik(nazwa);

break;

}

}while (opcja != '0');

getch();

}

GRAFF

#include<stdio.h>

#include<conio.h>

struct sasiedzi

{

int ile;

int sas[10];

};

void wczyt(char *nazwa,sasiedzi graf[],int &ile_w)

{

FILE *ff;

if ((ff=fopen("graf.txt","rt"))!=NULL)

{

fscanf(ff,"%d", &ile_w);

for(int i=0; i<ile_w ; i++)

{

fscanf(ff,"%d", &graf[i].ile);

for(int j=0; j<graf[i].ile; j++)

{

fscanf(ff,"%d", &graf[i].sas[j]);

}

}

}

fclose(ff);

}

void wysw(sasiedzi graf[], int ile)

{

printf("%d",ile );

for(int i=0; i<ile ; i++)

{

printf(" \n %d|", graf[i].ile);

for(int j=0; j<graf[i].ile; j++)

{

printf("%d ",graf[i].sas[j]);

}

}

getch();

}

void main (void)

{

sasiedzi graf[10];

int ile_w;

char nazwa[10]="graf.txt" ;

FILE *ff;

wczyt(nazwa,graf, ile_w);

wysw(graf,ile_w);

getch();

}

#include<stdio.h>

#include<conio.h>

#include<iostream.h>

struct osoba

{

char nazwisko[20];

int wiek;

osoba *next; //wskaźnik na nastepny element

} ;

//odczyt osoby z klawiatury

//return wskaźnik na na nowy element zaalokowany dynamicznie i wczytany z klawiatury

osoba *wczytZklaw()

{ char nazw[20];

int wiek;

osoba *nowy;

nowy=new osoba;

printf("podaj nazwisko");

scanf("%s",nowy->nazwisko);

printf("podaj wiek");

scanf("%d",&wiek);

nowy->wiek=wiek;

//alkoujemy pamiec

//wczytujemy z klawiatury

return nowy;

}

//dokladanie do poczatki

// start - początek listy

// element - wskaźnik na dodawany element

// return - zmodyfikowany poczatek listy

osoba* naKoniec(osoba * start, osoba *element)

{

osoba *px;

px=new osoba;

while(px!=NULL)

{

px=px->next ;

}

px->next=element ;

return start;

}

//wyswietlanie listy

void wysw(osoba *start)

{ osoba *px;

px=start;

while(px!=NULL)

{

cout<<px->nazwisko;

cout<<px->wiek;

px->next;

}

}

//usuwanie pierwszego elementu

// start - początek listy

// return - zmodyfikowany poczatek listy

osoba* usunpierwszy(osoba * start)

{

return 0;

}

//usuwanie ostaniego elementu

// start - początek listy

// return - ewentualnie zmodyfikowany poczatek listy (gdy lista była jednoelementowa)

osoba* usunOstani(osoba * start)

{

return 0;

}

//znajdowanie elmentu na podsatwie zadanego kryterium

//start - poczatek listy

//... - kryterium (wiek lub nazwisko)

//return - wskaźnik na znaleziony element lub NULL jesli nie znaleziono

osoba *znajdz(osoba *start,...)

{

return 0;

}

//----------------------------------------

int main(void)

{

char opcja;

osoba *lista = NULL;

osoba * pElem;

do{

printf("1.Dodawanie\n");

printf("2.Wsywietlanie\n");

printf("3.Usuwanie\n");

printf("4.Wyszukiwanie\n");

printf("0.Koniec\n");

printf("podaj opcje:");

opcja = getch();

switch( opcja){

case '1': pElem = wczytZklaw();

lista = naKoniec(lista,pElem); // lub lista = naKoniec(lista,pElem);

break;

case '2': wysw(lista);

break;

case '3': lista = usunpierwszy(lista);//lista = usunOstani(lista)

break;

case '4':pElem = znajdz(lista);

if(pElem != NULL){

//wyswietlic pElem->wiek i pElem->nazwisko

}

break;

}

}while (opcja != '0');

}



Wyszukiwarka

Podobne podstrony:
W INZ 10, Polibudos, 1rok, informayka
W INZ 13, Polibudos, 1rok, informayka
W INZ 15, Polibudos, 1rok, informayka
lab merniki, Polibudos, 1rok, informayka
W INZ 14, Polibudos, 1rok, informayka
wstępne informacje- charakterystyki przebicie i inne123-lab, Polibudos, 1rok, półprzewody
W INZ 9, Polibudos, 1rok, informayka
WM laborki, ściąga ĆW 6
Zestaw 4, Polibudos, 1rok, miernictwo
Połprzewody, Polibudos, 1rok, półprzewody
POLPRZEWODY TEST, Polibudos, 1rok, półprzewody
TS laborka ściąga, Elektrotechnika, Teoria Sterowania, laboratorium
fizyka laborki sciaga
FCS laborki ściąga
fizyka laborki, STUDIA POLIBUDA, INŻYNIERIA MATERIAŁOWA, SEMESTR I, Fizyka, Laboratoria, 304

więcej podobnych podstron