Programski jezik C. Primeri su izvršeni i provereni korišćenjem MS Visual Studio 6.0.

Ako za izvršavanje koristite neki drugi kompajler, potrebno je da, na kraju svakog rešenja, dodate sledeću liniju koda: system("PAUSE"); http://www.its.edu.rs/ ITS - Visoka Škola Strukovnih Studija Za Informacione Tehnologije 1. Hello world // Prvi nacin - bez prelaska u novi red #include <stdio.h> main() { printf("Hello, world!"); } 2. // Drugi nacin - sa prelaskom u novi red #include <stdio.h> main() { printf("Hello, world!\n"); } 3. // Treci nacin - sa prelaskom u novi red pre i posle poruke #include <stdio.h> main() { printf("\nHello, world!\n"); } 4. // Cetvrti nacin - tri posebna "printf" izraza #include <stdio.h> main() { printf("Hello,\n"); printf("world!"); printf("\n"); 5. #include <stdio.h> main() { printf("Zdravo, svima\n"); // \" navodnici printf("\"Zdravo, svima\"\n"); // \n novi red printf("\\n\tprelazak u novi red\n"); // \t tabulator printf("\\t\ttabulator\n"); // kosa crta printf("\\\\\tkosa crta\n"); } 6. #include <stdio.h> main() { // definisanje promenljive i sa // dodeljivanjem vrednosti 2 int i = 2; // ispis vrednosti printf("Vrednost promenjive i je %d.\n",i); } 7.

} 10. num2. //poruka korisniku printf("Sabiranje dva broja\n").h> main() { .h> main() { //celobrojne promenjive num1. //prikaz zbira dva broja printf("Zbir dva broja je: %d\n". &number). num2. // poruka korisniku za unos broja printf("Unesite ceo broj: "). // unos celog broja scanf("%d". printf("Uneli ste broj (%%f): %f\n".#include <stdio. number).2f) /////////////////////////////////////////////////////////////////////// #include <stdio.56. 34. printf("%d + %d = %d\n". i sl. sum).h> main() { // definisanje promenljive int number. &num2). //poruka korisniku za unos drugog broja printf("Unesite drugi broj:\n"). // Predmet: Osnovi Programiranja .Programski jezik C // // Primer: Program koji prikazuje zaukruzivanje realnog broja prilikom ispisa (%.56. sum. num1+num2). // Ispis realnog broja. 24. sum int num1. //unos drugog broja scanf("%d". &num1). num2. podrazumevana preciznost je 6 // Probati vrednosti 12. //sabiranje dva broja sum = num1 + num2.h> main() { float number. num1. } 8. } 9. printf("Unesite realan broj: "). //unos prvog broja scanf("%d". // ispis unetog broja printf("Uneli ste broj: %d\n". // Primer: Program za sabiranje dva broja /////////////////////////////////////////////////////////////////////// #include <stdio. // Primer: Program koji prikazuje unos i ispis realnih brojeva (format %f) /////////////////////////////////////////////////////////////////////// #include <stdio. // Unos realnog broja scanf("%f".56. //poruka korisniku za unos prvog broja printf("Unesite prvi broj:\n").&number). number).

// Rezultat je ceo broj. // Unos realnog broja scanf("%f". printf("Unesite prvi broj : "). // Eksplicitna konverzija. a i b pretvaramo u realne brojeve. rezultat je ceo broj printf("Zbir %d + %d = %d\n". printf("%s\n karakter =%3c\n vrednost =%3d\n".h> main() { printf("%s\n karakter =%3c\n vrednost =%3d\n". } 13. number). rezultat je ceo broj!!! printf("Celobrojni kolicnik %d/%d = %d\n". num2. // Primer: Ilustracija stampanja karaktera . num2.'a'). rezultat je ceo broj printf("Proizvod %d * %d = %d\n". // Kada se saberu dva cela broja. pa je pogresno njegovo ispisivanje kao // realnog broja printf("Pogresan pokusaj racunanja realnog kolicnika %d/%d je : %f\n". num2.%d = %d\n". // Kada se podele dva cela broja. printf("Unesite drugi broj : ").num1.num1.float number. } . num2. // Ostatak pri deljenju se moze izvrsiti samo nad celim brojevima printf("Ostatak pri deljenju %d/%d je %d\n".num1.'a'. scanf("%d". num1.h> main() { int num1.Programski jezik C // // Primer: Ilustracija ispisa karaktera. // Predmet: Osnovi Programiranja . "Veliko slovo:". num1. 'a' . num1*num2). num1.2f\n". 'A'). nizova karaktera (%c. num2.format %c /////////////////////////////////////////////////////////////////////// #include <stdio. num1%num2). %s) i // ascii vrednosti karaktera (%d) /////////////////////////////////////////////////////////////////////// #include <stdio.h> main() { // %c je za stampanje karaktera // %4c je za stampanje karaktera na cetiri pozicije printf("Prikaz slova:\n%4c\n%9c\n". num1+num2).&num2). num2. // Ispis realnog broja zaokruzenog na 2 decimale printf("Broj zaokruzen na dve decimale je : %. } 11.'A'. // Primer: Primeri upotrebe aritmetickih operatora /////////////////////////////////////////////////////////////////////// #include <stdio. num1/num2).&num1). scanf("%d". rezultat je ceo broj printf("Razlika %d . // Kada se oduzmu dva cela broja. num2. // da bi deljenje bilo realno printf("Realni kolicnik %d/%d = %f\n". num1-num2). } 12. "Malo slovo:". num2. (float)num1/(float)num2). num1/num2). // Kada se pomnoze dva cela broja. // Poruka korisniku printf("Unesite realan broj: ").'A'). num1.&number).

// Primer: Izracunavanje obima i povrsine praugaonika // ako su zadate stranice (celi brojevi) /////////////////////////////////////////////////////////////////////// #include <stdio. . // Unos stranice b scanf("%d". &a).p). &b).14 main() { double p. // stampa obima pravougaonika printf("Obim pravougaonika je %d\n". // stampa povrsine pravougaonika printf("Povrsina pravouganika je %d\n". } 15. // Izracunavanje i ispis obima kruga printf("Obim kruga je: %. } 16. // Primer: Izracunavanje obima i povrsine kruga /////////////////////////////////////////////////////////////////////// #include <stdio. // Unos stranice a scanf("%d". // Primer: Program za izracunavanje povrsine i zapremine // valjka ako su zadati poluprecnik osnovice // i visina (realni brojevi.14. // Poruka korisniku printf("Unesite stranicu b: "). r*r*PI). // Poruka korisniku printf("Unesite visinu valjka: "). 2*r*PI). // Unos poluprecika kruga // Ulazna konverzija za tip double %lf scanf("%lf".v. &r).h> // simbolicka konstanta #define PI 3.3f\n".p.r. // Izracunavanje i ispis povrsine kruga printf("Povrsina kruga je: %. P=2rPI(r+h).b.h. // izracunavanje obima pravougaonika o=2*(a+b). // Poruka korisniku printf("Unesite poluprecnik kruga: ").h> // simbolicka konstanta #define PI 3.14 main() { double r. // izracunavanje povrsine pravougaonika p=a*b. // Poruka korisniku unesite stranicu a printf("Unesite stranicu a: "). o). V=r2PIh) /////////////////////////////////////////////////////////////////////// #include<stdio.3f\n".h> main() { int o.a.

// stepeni. // Ispis povrsine valjka printf("Povrsina valjka je: %. . // izracunavanje koliko delova stepena je preostalo x-=stepen. // zaokruzivanje broja stepeni stepen=(int)x. // Poruka korisniku printf("Unesite poluprecnik valjka: ").4f\n". y2.h> #include <math.v).minut.z2>:\n").&h). // Primer: Odredjivanje broja stepeni.sekund.2f\n". minuta i sekundi u zadatom uglu int stepen. p). // Unos poluprecnika valjka scanf("%lf".y1. d). // Primer: Izracunati rastojanje izmedu dve tacke u prostoru // ako su zadate koordinate krajnjih tacaka /////////////////////////////////////////////////////////////////////// #include <stdio.&r). // poruka korisniku printf("Unesite ugao u radijanima: ").h> main() { // koordinate tacaka i trazeno rastojanje double x1.2)). z1. // Ispis zapremine valjka printf("Zapremina valjka je: %.&z2).&y2. // unos prve tacke scanf("%lf%lf%lf".&z1). // ispis trazenog rastojanja printf("d = %. // poruka korisniku printf("Unesite koordinate druge tacke <x2.&x1.z1>:\n"). // Izracunavanje povrsine valjka p = 2*r*PI*(r+h).2)+pow(z2-z1.4f\n". x2. // izracunavanje broja minuta x*=60.2)+pow(y2-y1. 18.&x2. // unos druge tacke scanf("%lf%lf%lf". // Izracunavanje zapremine valjka v = r*r*PI*h. d. // poruka korisniku printf("Unesite koordinate prve tacke <x1.y2.&y1. // zaokruzivanje broja minuta minut=(int)x. z2. 17.h> #define PI 3.&x). y1.// Unos visine valjka scanf("%lf".141592 main() { // ugao u radijanima double x. // unos ugla u radijanima scanf("%lf". // konverzija u stepene x*=180/PI. // izracunavanje trazenog rastojanja d=sqrt(pow(x2-x1. minuta i sekundi // u uglu koji je zadat u radijanima /////////////////////////////////////////////////////////////////////// #include <stdio.

h> #include <math.sekund). beta *= 180/PI.2)). // ispis broja stepeni. // unos broja x . y.%d]\n".&yb). if(izraz == 0) { alfa = acos( (b*b+c*c-a*a) / (2*b*c) ).2) + pow(ya-yc.2)).&xa. printf("Unesite koordinate tacke A(x. scanf("%lf%lf".alfa. alfa *= 180/PI. a bilo koja nenulta vrednost kao TRUE izraz = (a>=(b+c)) || (b >= (a+c)) || (c>=(a+b)). // poruka korisniku printf("Unesite broj x: "). c. y=2x za x> = 5 // vrednost x se unosi sa tastature /////////////////////////////////////////////////////////////////////// #include <stdio.141592 main() { double xa. printf("Stranica c je: %f\n". minuta i sekundi printf("\nStepena. // vrednost 0 se tumaci kao FALSE. printf("Stranica a je: %f\n".2f\nGama = %.&xc.y): "). minuta. printf("Unesite koordinate tacke B(x.h> #define PI 3.2) + pow(ya-yb.2) + pow(yb-yc. alfa. b. y= x+2 za 0<=x<1. 19.&xb. c = sqrt(pow(xa-xb. sekundi [%d.&yc).h> main() { double x. printf("Unesite koordinate tacke C(x.2)). gama.y): "). gama *= 180/PI.2f\n".minut. c). } 20. y=3x-1 za 1<=x<5. ya. gama = acos( (a*a+b*b-c*c) / (2*a*b) ). beta = acos( (c*c+a*a-b*b) / (2*c*a) ).2f\nBeta = %.beta. beta. printf("Alfa = %. scanf("%lf%lf".&ya). } else printf("Ne moze se kreirati trougao\n"). // Primer: Program za izracunavanje uslovnog izraza prema datom obrascu // y = -5 za x<0. scanf("%lf%lf". // izracunavanje stranica a = sqrt(pow(xb-xc. b = sqrt(pow(xa-xc.stepen.gama). // Primer: Odredjivanje uglova trougla. a). int izraz =0. yc.} // koliko delova minuta je ostalo x-=minut. yb. // ako su zadate koordinate njegovih temena /////////////////////////////////////////////////////////////////////// #include <stdio. xc.y): "). xb. a. // izracunavanje broja sekundi x*=60. printf("Stranica b je: %f\n". // zaokruzivanje broja sekundi sekund=(int)x. b).%d.

h> main() { double x.y)+0.z).} 21. printf("z= %.5)/(1+max*max). scanf("%lf".min). // Primer: Izracunavanje n-tog stepena celog broja a. if(x>y) { max =x. printf("Minimum je: %f\n".y).y))^2) // na dva nacina /////////////////////////////////////////////////////////////////////// ////////////// // prvi nacin ////////////// #include <stdio. printf("Unesite vrednosti za x: "). else if(x < 1) y = x + 2. printf("Unesite vrednosti za y: "). min. z = (min+0. min = x < y ? x : y.&x).z). } printf("Maksimum je: %f\n".5)/(1+max*max).&x). scanf("%lf". min =y. z. printf("Unesite vrednosti za y: "). scanf("%lf". // Oba broja se unose sa tastature /////////////////////////////////////////////////////////////////////// #include <stdio. } ////////////// // drugi nacin ////////////// #include <stdio.2f\n".h> main() { double x.max). min=x. else if (x < 5) y = 3*x .2f\n".&x). z =(min+0. scanf("%lf". scanf("%lf". else y = 2*x.3f\n". min. // provera uslova izraza if(x < 0) y = -5. // Stampanje vrednosti y printf("Y= %. y.&y). } 22.&y). z.h> main() . max = x < y ? y : x. // Primer: Izracunavanje vrednosti izraza: // z=(min(x. max.5)/(1+(max(x. printf("Vrednost izraza z je: %. printf("Unesite vrednosti za x: "). } else { max=y. max. y.1.

n. // izracunavanje n-tog stepena broja a while(i<=n) { stepen*=a. /////////////////////////////////////////////////////////////////// #include <stdio. scanf("%d".stepen). i=1.h> main() { int suma=0.n. } // ispis sume prirodnih brojeva printf("Suma kvadrata prirodnih brojeva od 1 do %d je: %d\n".suma).suma).&n). stepen=1.&n).h> main() { int suma=0.&a). // izracunavanje sume while(i <= n) { suma+= i. // izracunavanje sume kvadrata while(i <= n) { suma+= i*i. n. i++. // unos broja a scanf("%d". n. // poruka korisniku printf("Unesite broj a: "). // unos broja n printf("Unesite ceo broj n: ").&n). i=1. // unos broja n scanf("%d".n. i++. // Primer: Program za izracunavanje zbira kvadrata prvih n brojeva. } 25. // Primer: Program za izracunavanje sume kvadrata parnih // brojeva u opsegu od broja n do broja m. i=1. // poruka korisniku printf("Unesite broj n: "). // Unos broja n vrsi se sa tastature /////////////////////////////////////////////////////////////////////// #include <stdio. // Primer: Program za izracunavanje sume prirodnih brojeva od 1 do n.a. // unos broja n printf("Unesite ceo broj n do koga zelite sumu: "). } // ispis n-tog stepena printf("Broj %d na %d-ti stepen je : %d\n".{ int a. // Broj n se unosi sa tastature. .n. } 24. i++. scanf("%d". } 23. } // ispis sume prirodnih brojeva printf("Suma prirodnih brojeva od 1 do %d je: %d\n".

&m). } // ispis rezultata printf("Suma kvadrata parnih brojeva od %d do %d je %d\n"..m. // Primer: Program za nalazenje svih trocifrenih brojeva koji su jednaki // zbiru kubova svojih cifara.b.h> main() { int i..h> main() { int suma=0. } 26. // izracunavanje faktorijela for(i=1. abc = a3+ b3+c3 /////////////////////////////////////////////////////////////////////// #include <stdio. faktorijel).i.. // Primer: Program za izracunavanje faktorijela // n! = n*(n-1)*(n-2)*.c. // unos brojeva n i m printf("Unesite cele brojeve n i m:\n"). . printf("Trocifreni brojevi koji su jednaki zbiru kubova svojih cifara su:\n").&n. } 27.h> #define KUB 3 main() { int a. scanf("%d %d".n. // Broj n se unosi sa tastature /////////////////////////////////////////////////////////////////////// #include <stdio. } // ispis rezultata faktorijela printf("Faktorijel = %ld\n".n.m.// Brojevi n i m se unose sa tastature (n<m) /////////////////////////////////////////////////////////////////////// #include <stdio.h> #include <math. while(i <= m) { // provera za parne brojeve if(i%2 == 0) suma+= i*i.i<=n. long faktorijel=1. scanf("%d".n.&n). // izracunavanje sume kvadrata i=n. i++. double k.m.i++) { faktorijel=faktorijel*i.*2*1.suma). // unos broja za izracunavanje faktorijela printf("Unesite ceo broj n: ").

printf("(unesite 0 za kraj ili pozitivan broj za nastavak) \n"). .h> main() { char ch. int i. // spoljasnja petlja while(n>0) { // poruka korisniku printf("Koliko brojeva zelite da unesete? n= "). //unos prvog broja printf("Unesite prvi realan broj:\t ").ch). scanf("%d".m<999. // poredjenje svakog sledeceg broja sa min i max for(i=2.m++) { a = m/100. //cifra ne mestu stotica b = m%100/10. } printf("\n"). min = max = a.m).ch.KUB) + pow(b. if(a < min) min = a. //cifra ne mestu desetica c = m%10. min.ch++) { printf("ASCII kod za %c je %d\n".ch<='Z'. // Primer: Program za ispis velikih slova od A do Z i njihovih ASCII kodova /////////////////////////////////////////////////////////////////////// #include <stdio.&n). 28. printf("Da li zelite novi unos?\n").KUB) + pow(c.min). if(a > max) max = a. i++) { printf("Unesite sledeci realan broj:\t"). max. //cifra ne mestu jedinica k = pow(a. double a. } // stampanje brojeva printf("Minimum = %f\n".KUB).&a).} //petlja za prolazak kroz sve trocifrene brojeve for(m=100. printf("Maximum = %f\n". } } 28. for(ch='A'. // Primer: Program za ucitavanje n realnih brojeva i stampanje // najveceg i najmanjeg broja /////////////////////////////////////////////////////////////////////// #include <stdio.h> main() { int n=1.&a). i<=n. scanf("%lf".max). //izracunavanje kubova if(m == k) //stampaj brojeve printf("%d ". scanf("%lf".

b i c. // vremena t1 i t2 i pronalazi predjeni put s u intervalu t1 do t2.c. printf("\nZadajte vremenski interval (t1. return 0.&t1.b. //unos vrednosti potrebnih za proracune printf("\nPredjeni put u intertvalu vremena (t1. } } 29.t2. t2.predjeni put float a. float t1. b.b.parametri //t1. t+=dt) s+=2*v(t). for(t=t1+dt. scanf("%f%f%f".&c).s).&t2). //////////////////////////////////////////////////////////////////////////// #include<stdio. //racunanje predjenog puta preko duplog poziva funkcije s=v(t1)+v(t2).dt. scanf("%f%f".&a.4f\n".t2)\n").s. } .t2): "). /*funkcija. i c: ").h> #include<math.vremenski intervali // s . t<=t2-dt.t2 .&b. // Primer: Program koji učitava parametre a.c . E. printf("Zadajte parametre a. t. brzina nekog tela po formuli: v=*a*t+b*sin(c*t)*/ float v(float t) { return a*t+b*sin(c*t). s=s*dt/2.&n). } main() { //deklaracija int n. dt=(t2-t1)/1000. //ispis printf("\nPredjeni put u zadatom intervalu je %9.t1.scanf("%d".h> //globalne promenljive //a. dt.