Zajęcia trzecie – tablice, odczyt pliku


s03e01-tablice.c

#include <stdio.h>#include <stdlib.h>int main(){        int c[] = {1,5,8,9,2,4,3,0,7,6};int i;for(i=0;i<10;i++){printf("i: %dtc[i]: %dn",i,c[i]);}}

s03e02-tablice.c

#include <stdio.h>#include <stdlib.h>int main(){int c[10];int i;srand(time(0));for(i=0;i<10;i++){c[i]=rand()%100;}for(i=0;i<10;i++){printf("i: %dtc[i]: %dn",i,c[i]);}}

s03e03-tablice-dwuwymiarowe.c

#include <stdio.h>#include <stdlib.h>int main(){int c[3][3];int i,j;srand(time(0));for(i=0;i<3;i++){for(j=0;j<3;j++){c[i][j]=rand()%100;}}for(i=0;i<3;i++){for(j=0;j<3;j++){printf("i: %dtj: %dtc[i]: %dn",i,j,c[i][j]);}}}

s03e04-continue-break-return.c

#include <stdio.h>int main(){int i;for(i=0;i<10;i++){if(i==5)break;printf("Break i: %dn",i);}for(i=0;i<10;i++){if(i==5)continue;printf("Continue i: %dn",i);}for(i=0;i<10;i++){if(i==5)return;printf("Return i: %dn",i);}printf("Koniec programun");}

s03e05-odczyt-pliku

#include <stdio.h>#include <stdlib.h>int main(){FILE * plik;int i,j;int c[10][11];int posx=5, posy=5;char q;plik=fopen ("mapa.map","r");for(i=0;i<10;i++){for(j=0;j<11;j++){c[i][j] = fgetc(plik);}}fclose (plik);printf("Wciśnij klawisz aby rozpocząć...");while(scanf("%c",&q)!=EOF){system("clear");for(i=0;i<10;i++){for(j=0;j<11;j++){printf("%c",c[i][j]);}}printf("n");}}

mapa.map

##### #####   ###  ##        ##        ##        ##        ##     #####     #   #     #   #######   

s03e06-dnd.c

#include <stdio.h> #include <stdlib.h>  //definiujemy zawodnika jako kod 64, czyli '@'#define PLAYER 64  int main() {   FILE * plik;    int i,j;  //jako plansza do gry posłuży nam tablica o wymiarach 10x11  //jedenasty znak to znak nowej linii  int mapa[10][11];   int posx=5, posy=5;   char klawisz;    plik=fopen ("mapa.map","r");    for(i=0;i<10;i++){     for(j=0;j<11;j++){       mapa[i][j] = fgetc(plik);     }   }   fclose (plik);    printf("Wciśnij klawisz aby rozpocząć...");   while(scanf("%c",&klawisz)!=EOF)   {     system("clear");     //pod kodem '32' poniżej kryje się spacja;    //ruch postacią możemy wykonać tylko gdy docelowe pole jest spacją    if(klawisz=='j' && mapa[posy][posx-1]==32)posx--;     if(klawisz=='l' && mapa[posy][posx+1]==32)posx++;     if(klawisz=='i' && mapa[posy-1][posx]==32)posy--;     if(klawisz=='k' && mapa[posy+1][posx]==32)posy++;     for(i=0;i<10;i++){       for(j=0;j<11;j++){         if(j==posx && i==posy){           printf("%c",PLAYER);         } else{           printf("%c",mapa[i][j]);         }       }     }     printf("n");   } }

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *