= Uvod v programski jezik C = V naslednjih poglavjih bom poizkušal na čim bolj enostaven način razložiti osnove programskega jezika C, ki so obvezno potrebne za izdelavo nekega konkretnega programa. [[BR]] == Prvi program == Da bomo premagali strah glede programiranja s programskim jezikom C oziroma, da si bomo potešili željo po svojem prvem programu, napišimo enostaven program, ki nam bo izpisal naslednje besedilo: ''Moj prvi program''. {{{ #!c #include int main() { printf("Moj prvi program\n"); return 0; } }}} [[BR]] == Sintaksa jezika == Kot vsi drugi programski jeziki ima tudi C značilno sintakso jezika, ki se jo moramo strogo držati. To pomeni, da moramo upoštevati pravilni vrstni red in izbrane kombinacije besed ter simbolov tako, da tvorimo sintaktično pravilne izraze. Če sintaksa zapisanega programa ni pravilna, nam bo prevajalnik javil napako. Najpogostejši operatorji in izrazi: * OPERATORJI * Relacijski {{{ #!c a==b //a je enak b a!=b //a ni enak b a<=b //a je manjši ali enak b a>b //a je večji kot b }}} * Logični {{{ #!c (ab) { max=a; } else { max=b; } }}} V ''if'' stavke lahko dodamo še dodatne pogoje. To storimo z ukazom ''else if(pogoj)''. {{{ #!c if(a>b) { max=a; } else if(c>a) { max=c; } else { max=b; } }}} [[BR]] '''For zanka''' {{{ #!c for(i=0; i<10; i++) { printf("text\n"); } }}} Pri tem ''\n'' pomeni prehod v novo vrsto (New Line) [[BR]] '''Switch stavek''' {{{ #!c switch(i) { case 1: printf("text 1") break; case 2: printf("text 2") break; case 3: printf("text 3") break; } }}} Lahko uporabimo še dodatni ukaz ''default'', pri katerem se izvršijo stavki, kadar ni bil izbran določen ''case''. {{{ #!c switch(i) { case 1: printf("text 1") break; case 2: printf("text 2") break; default: printf("text") } }}} [[BR]] '''While zanka''' {{{ #!c i=0; while(i<10) { printf("text\n"); i=i+1; } }}} [[BR]] '''Do - while zanka''' {{{ #!c i=0; do { printf("text\n"); i=i+1; } while(i<10); }}} Pri ''do - while'' zanki se stavki izvedejo vsaj enkrat! [[BR]] V praksi pa se pogosto uporablja kombinacija teh stavkov. {{{ #!c //Generiranje elementov matrike H for(i=0; i int main() { float a=5.12; //Realno število int b=-5; //Celo število printf("Vrednost a je enaka %f\n", a); printf("Vrednost a je enaka %4.2f\n", a); //Nastavimo željen format izpisa printf("Vrednost a je enaka %g\n", a); //Format bo odvisen od velikosti printf("Vrednost b je enaka %d\n", b); return 0; } }}} Program izpiše naslednje: {{{ Vrednost a je enaka 5.120000 Vrednost a je enaka 5.12 Vrednost a je enaka 5.12 Vrednost b je enaka -5 }}} [[BR]] == Polja, vektorji, matrike == Polja, vektorje in matrike definiramo z deklaracijo, enako kot to velja za spemenljivke. {{{ #!c float M[4]; //Polje, vektor ali matrika vsebuje 4 elemente z realnimi vrednostmi }}} Prvi element ima vedno indeks 0! Za primer določimo vrednosti posameznim elementom: {{{ #!c float M[4]; M[0]=2.0; M[1]=1.0; M[2]=4.0; M[3]=1.0; }}} Vrednosti posameznih elementov pa lahko definiramo že pri deklaraciji. To storimo na naslednji način: {{{ #!c float M[4]={2.0, 1.0, 4.0, 1.0}; }}} Za izpis 1. elementa bomo zapisali: {{{ #!c printf("Vrednost 1. elementa znaša %f\n", M[0]); }}} == Branje datotek == == Dinamična alokacija pomnilnika == == Reševanje sistema linearnih enačb ==