Programiranje u C-u

poruka: 216
|
čitano: 64.782
|
moderatori: Lazarus Long, XXX-Man, vincimus
+/- sve poruke
ravni prikaz
starije poruke gore
14 godina
protjeran
offline
Re: Programiranje u C-u
Floki kaže...

Pa unesi sam funkciju strln u program - pa vidi kako broji znakove.

 

 

#include<stdio.h>
#include<string.h>


int main()
{
    char rijec[10] = "macka";
    printf("Broj slova rijeci macka %d", strlen(rijec));
}
Koliko je izbacilo za riječ macka?

Ako je 5 - ne broji nul znak, a ako je 6 - onda broji - a nul znak je onaj znak za prekid na kraju niza '\0'.

Dakle - ako učiš programiranje onda znaš da char niz macka ima 6 znakova - 5 ovih njezinih mačijih i onaj znak za prekid niza nul znak '\0'.

Međutim, ako mali Ivica kaže učiteljici u školi da riječ macka ima 6 slova - ona će pozvati njegovog oca programera na razgovor nakon što malom spraši jedinicu.

E zato je otac malog Ivice programer napisao fukciju strln - ona broji znakove niza od početka do nul znaka - dakle mali Ivica će reći učiteljci da riječ mačka ima 5 slova -

nakon što mu je otac pokazao strln funkciju u konzoli i primjenio je na mačku.

 

Hvala

SENAID
17 godina
neaktivan
offline
Re: Programiranje u C-u
Broken kaže...

  Evo za ovaj gore zadatak napisao sam kod zanima me jesam li dobro napravio:

 

 

#include<stdio.h>
int main()
{
    char x;
     char ch;
    int n,i,br=0;

    printf("Unesite jedan broj u intervalu [1,15]: ");
    scanf("%d",&n);
     while ((ch = getchar()) != '\n' && ch != EOF);
/** kod
    ...
*/
}

Stvar je najvjerojatnije u bufferu kojeg treba flushati. Dodaj ove dvije boldane linije koda, a ukloni n = n*2, pa reci jel onda radi.

Gentoo... it's like wiping your ass with silk. Or sandpaper.
14 godina
neaktivan
offline
Re: Programiranje u C-u
1domagoj1 kaže...
Broken kaže...

  Evo za ovaj gore zadatak napisao sam kod zanima me jesam li dobro napravio:

 

 

#include<stdio.h>
int main()
{
      char x;
          char ch;
      int n,i,br=0;

      printf("Unesite jedan broj u intervalu [1,15]: ");
      scanf("%d",&n);
          while ((ch = getchar()) != '\n' && ch != EOF);
/** kod
      ...
*/
}

Stvar je najvjerojatnije u bufferu kojeg treba flushati. Dodaj ove dvije boldane linije koda, a ukloni n = n*2, pa reci jel onda radi.

  Radi :), samo mozes li mi objasniti sta točno znači ovo pod while, mislio sam da iza while ne smije ici ; tj mora biti { ?

15 godina
neaktivan
offline
Re: Programiranje u C-u
Broken kaže...

 Radi :), samo mozes li mi objasniti sta točno znači ovo pod while, mislio sam da iza while ne smije ici ; tj mora biti { ?

Ta linija ti je samo skracena verzija ovoga:

 

do
{
    ch=getchar()
}
while (ch!='\n' && ch!=EOF);

 

dakle da se vratimo na to:

 

while ((ch = getchar()) != '\n' && ch != EOF);

 

Kao sto vidis on je ovaj prvi kod uspio cijeli ugurati unutar uvjeta while petlje, kako vise nema bloka unutar viticastih zagrada onda se stavlja tockazarez na kraj.

My computer once beat me at chess, but we got even after a round of boxing.
Poruka je uređivana zadnji put uto 13.9.2011 16:17 (rustweaver).
14 godina
neaktivan
offline
Re: Programiranje u C-u
rustweaver kaže...
Broken kaže...

  Radi :), samo mozes li mi objasniti sta točno znači ovo pod while, mislio sam da iza while ne smije ici ; tj mora biti { ?

Ta linija ti je samo skracena verzija ovoga:

 

do
{
      ch=getchar()
}
while (ch!='\n' && ch!=EOF);

 

dakle da se vratimo na to:

 

while ((ch = getchar()) != '\n' && ch != EOF);

 

Kao sto vidis on je ovaj prvi kod uspio cijeli ugurati unutar uvjeta while petlje, kako vise nema bloka unutar viticastih zagrada onda se stavlja tockazarez na kraj.

  Onda u svom kodu mogu mogu staviti umjesto x staviti ch nesto ovako provjerio sam i radi.

 

#include<stdio.h>
int main()
{
      char ch;
      int n,i,br=0;

      printf("Unesite jedan broj u intervalu [1,15]: ");
      scanf("%d",&n);

      if((n>=1) && (n<=15))
    {
        printf("Unesite %d znakova:\n",n);
        for(i=0;i<n;i++)
        {
          while ((ch = getchar()) != '\n' && ch != EOF);
          scanf("%c",&ch);
          if((ch='0' && ch<='9')){
          br++;

        }
        }
      printf("U unesenom nizu ima: %d brojeva.\n",br);
    }
    else
      printf("Unijeli ste broj izvan intervala.\n");
}

15 godina
neaktivan
offline
Re: Programiranje u C-u
Broken kaže...

  Onda u svom kodu mogu mogu staviti umjesto x staviti ch nesto ovako provjerio sam i radi.

Da, ne trebaju ti dvije zasebne varijable 'x' i 'ch' kada obje sluze istoj stvari.

 

Drugo, zasto koristis scanf? Mogao si jednostavno koristiti getchar za unos znakova i tada ne bi morao cistiti input buffer. Scanf je neuredna funkcija i trebao bi ju izbjegavati ako je ikako moguce...

 

Sad tek vidim da na pocetku trazis unos kolicine brojeva koji ce se upisati.

My computer once beat me at chess, but we got even after a round of boxing.
Poruka je uređivana zadnji put uto 13.9.2011 16:47 (rustweaver).
14 godina
neaktivan
offline
Re: Programiranje u C-u
rustweaver kaže...
Broken kaže...

  Onda u svom kodu mogu mogu staviti umjesto x staviti ch nesto ovako provjerio sam i radi.

Da, ne trebaju ti dvije zasebne varijable 'x' i 'ch' kada obje sluze istoj stvari.

 

Drugo, zasto koristis scanf? Mogao si jednostavno koristiti getchar za unos znakova i tada ne bi morao cistiti input buffer. Scanf je neuredna funkcija i trebao bi ju izbjegavati ako je ikako moguce...

  Da ali kada maknem scanf ne vraća mi točan rezultat, za rezultat mi vraća broj koji unesem n???

15 godina
neaktivan
offline
Re: Programiranje u C-u

Ignoriraj moje trabunjanje, ja sam se malo zanio... {#}

My computer once beat me at chess, but we got even after a round of boxing.
14 godina
neaktivan
offline
Re: Programiranje u C-u
rustweaver kaže...
Broken kaže...

  Onda u svom kodu mogu mogu staviti umjesto x staviti ch nesto ovako provjerio sam i radi.

Da, ne trebaju ti dvije zasebne varijable 'x' i 'ch' kada obje sluze istoj stvari.

 

Drugo, zasto koristis scanf? Mogao si jednostavno koristiti getchar za unos znakova i tada ne bi morao cistiti input buffer. Scanf je neuredna funkcija i trebao bi ju izbjegavati ako je ikako moguce...

 

Sad tek vidim da na pocetku trazis unos kolicine brojeva koji ce se upisati.

  Ako se ne trazi količina brojeva koje cu upisati, npr. da unosim znakove bilo bi pozeljnije koristiti getchar() nego scanf(%c), a ako bi unosi rijeci ili recenice bilo bi pozeljnije koristiti gets a ne scanf(%s)?

15 godina
neaktivan
offline
Re: Programiranje u C-u
Broken kaže...

  Ako se ne trazi količina brojeva koje cu upisati, npr. da unosim znakove bilo bi pozeljnije koristiti getchar() nego scanf(%c), a ako bi unosi rijeci ili recenice bilo bi pozeljnije koristiti gets a ne scanf(%s)?

Tako nekako, s time da ni gets nije bez svojih mana, ali barem ne ostavlja smece u input bufferu

 

Gets ima jedan problem, ne provjerava kolicinu znakova koje si upisao. Znaci ako imas polje od 10 znakova i upises 20 znakova gets ce to veselo strpati u ovo polje pri cemu ce drugih 10 znakova izletjeti iz okvira polja i prebrisati dio memorije izvan polja (ta memorija moze, a i ne mora biti u uporabi za nesto drugo, riskiras spektakularne greske). Dakle gets je opasan ako ne znas sto radis.

 

Vise o tome ovdje:

http://www.gidnetwork.com/b-56.html

 

dok kritike na racun scanf mozes naci ovdje:

http://www.gidnetwork.com/b-59.html

My computer once beat me at chess, but we got even after a round of boxing.
Poruka je uređivana zadnji put uto 13.9.2011 17:52 (rustweaver).
14 godina
neaktivan
offline
Re: Programiranje u C-u
rustweaver kaže...
Broken kaže...

  Ako se ne trazi količina brojeva koje cu upisati, npr. da unosim znakove bilo bi pozeljnije koristiti getchar() nego scanf(%c), a ako bi unosi rijeci ili recenice bilo bi pozeljnije koristiti gets a ne scanf(%s)?

Tako nekako, s time da ni gets nije bez svojih mana, ali barem ne ostavlja smece u input bufferu

 

Gets ima jedan problem, ne provjerava kolicinu znakova koje si upisao. Znaci ako imas polje od 10 znakova i upises 20 znakova gets ce to veselo strpati u ovo polje pri cemu ce drugih 10 znakova izletjeti iz okvira polja i prebrisati dio memorije izvan polja (ta memorija moze, a i ne mora biti u uporabi za nesto drugo, riskiras spektakularne greske). Dakle gets je opasan ako ne znas sto radis.

 

Vise o tome ovdje:

http://www.gidnetwork.com/b-56.html

 

dok kritike na racun scanf mozes naci ovdje:

http://www.gidnetwork.com/b-59.html

  Ako koristim funkciju getchar() ona mi nece puniti input buffer?

15 godina
neaktivan
offline
Re: Programiranje u C-u

getchar se najbolje ponasa od svih njih, prakticki ne mozes nikako pogrijesiti sa tom funkcijom.

My computer once beat me at chess, but we got even after a round of boxing.
15 godina
offline
Programiranje u C-u

Dečki sry na offtopicu ali jel ima negdje u zg-u da se kupi knjiga o c++??

Minecraft u srcu :) R.I.P. EnlightenedPhoenix 24.6.2011.
Moj PC  
0 0 hvala 0
14 godina
neaktivan
offline
Re: Programiranje u C-u
luxxxfromhell kaže...

Dečki sry na offtopicu ali jel ima negdje u zg-u da se kupi knjiga o c++??

Prolistaj malo forum. Milijun je već tema s tim pitanjem.

15 godina
neaktivan
offline
Re: Programiranje u C-u

Pored teme o C++ ti dodes u C temu propitivati se o C++ knjizi.

 

http://free-zg.htnet.hr/jsribar/gdjekupiti.html

My computer once beat me at chess, but we got even after a round of boxing.
15 godina
neaktivan
offline
Re: Programiranje u C-u
TracerCPP kaže...

Prolistaj malo forum. Milijun je već tema s tim pitanjem.

Kako se zove tvoja knjiga? Sad kad smo vec naceli tu temu...

My computer once beat me at chess, but we got even after a round of boxing.
14 godina
neaktivan
offline
Programiranje u C-u

Šta bih uzeo ovdje za unos znakova:

 

Napisati program koji od korisnika prihvaća unos znakova sa tipkovnice. Unos se prekida kada korisnik upiše '?'. Program treba ispisati "da" ako je predzadnji učitani znak samoglasnik odnosno "ne" ako zadnji učitani znak nije samoglasnik.

 

Kada bih isao preko getchara bi li preko brojaca stavio da mi broji znakove koje unesem ili ?

 
0 0 hvala 0
17 godina
neaktivan
offline
Re: Programiranje u C-u
Broken kaže...

Onda u svom kodu mogu mogu staviti umjesto x staviti ch nesto ovako provjerio sam i radi.

Da, da, istina, to sam nabrzaka napisal, ne trebaju ti dvije varijable posto sluze istoj svrsi. Tu while petlju mozes izbaciti van (na mjesto gdje sam ju i ja stavio) da se bezveze ne vrti u for petlji. Ne znam dali bi ti na ispitu skinuli bodove ako ne flushas buffer (mislim da nebi), ali na racunalu kad kompajliras, moras jednostavno flushati. Postoji i funkcija koja sama flusha buffer, fflush(). Zasto sam ja onda umjesto te f-je koristio ovu naizgled kompliciranu while petlju? Zato sto je fflush() zamisljena za flushanje output streamova, ne i input. To znaci da za input streamove njeno ponasanje nije definirano i ovisi o tome na kojoj platformi radis. Na jednoj platformi moze raditi, na drugoj ne, a na trecoj mozes dobivati svakakve stvari. Tak da to i nije bas pozeljna f-ja za koristiti (s input streamovima). No, to je vec duga prica, ovo je cisto informativno samo da znas. Ako zelis biti siguran samo lupis ovu while petlju i nemas brige. E i da, moras biti siguran da ima necega u bufferu (kao u tvom primjeru zbog poziva scanf() f-je), jer ako je buffer prazan, program ce cekati da uneses nesto (zbog poziva getchar() f-je u while petlji).

Gentoo... it's like wiping your ass with silk. Or sandpaper.
17 godina
neaktivan
offline
Re: Programiranje u C-u
Broken kaže...

Šta bih uzeo ovdje za unos znakova:

 

Napisati program koji od korisnika prihvaća unos znakova sa tipkovnice. Unos se prekida kada korisnik upiše '?'. Program treba ispisati "da" ako je predzadnji učitani znak samoglasnik odnosno "ne" ako zadnji učitani znak nije samoglasnik.

 

Kada bih isao preko getchara bi li preko brojaca stavio da mi broji znakove koje unesem ili ?

Evo ovdje imas nesto o while petlji i getchar-u (kad procitas moci ces bez problema rijesiti svoj zadatak).

Gentoo... it's like wiping your ass with silk. Or sandpaper.
14 godina
neaktivan
offline
Re: Programiranje u C-u
Broken kaže...

Šta bih uzeo ovdje za unos znakova:

 

Napisati program koji od korisnika prihvaća unos znakova sa tipkovnice. Unos se prekida kada korisnik upiše '?'. Program treba ispisati "da" ako je predzadnji učitani znak samoglasnik odnosno "ne" ako zadnji učitani znak nije samoglasnik.

 

Kada bih isao preko getchara bi li preko brojaca stavio da mi broji znakove koje unesem ili ?

  Evo kako sam   ja isao, ovdje ako maknem scanf(%c) ne vraca mi tocan broj unesenih znakova dok sa scanfom daje uvijek mi daje rezultat NE????

  Nikako da sredim ove zadatke sa znakovima da mi rade kako bog zapovjeda...

 

 

#include<stdio.h>
int main()
{
    char ch[20];
    int z,p,i;
    printf("Unesite znakove:\n");
    i=0;
    while((ch[i]=getchar())!='?' && (ch!=EOF))
    {
        scanf("%c",&ch[i]);
        i++;
    }
    z=i;
    p=i-1;
    if((ch[p]=='a') || (ch[p]=='i') || (ch[p]=='e') || (ch[p]=='o') || (ch[p]=='u'))
    printf("DA\n");

    if((ch[z]!='a') || (ch[z]!='i') || (ch[z]!='e') || (ch[z]!='o') || (ch[z]!='u'))
    printf("NE\n");

    printf("Unijeli ste: %d znakova\n",i);
    return 0;
}

17 godina
neaktivan
offline
Re: Programiranje u C-u
Broken kaže...

Evo kako sam   ja isao, ovdje ako maknem scanf(%c) ne vraca mi tocan broj unesenih znakova dok sa scanfom daje uvijek mi daje rezultat NE????

Nikako da sredim ove zadatke sa znakovima da mi rade kako bog zapovjeda...

Nisam dugo radio u C-u, pa me malo mucilo ovo, lol. Prvo sam probal sa scanf-om al da odbacuje whitespaceove i newlineove - scanf("%c%*[ \n\t]) ako slucajno ne znas kako natjerati scanf da discarda odredene charactere (boldani dio) - al sam onda trebal jos jedan character unijeti da bi on uzeo to iz buffera i obradio. Na kraju sam napravio s getchar, evo koda.

 

#include<stdio.h>
int main()
{
    char ch[20];
    int i = 0;

    printf("Unesite znakove:\n");

    while((ch[i]=getchar()) != '?' && (i < 19))
    {
       if ((ch[i] == ' ') || (ch[i] == '\n')) continue;
        ++i;
    }

    if((ch[i-1]=='a') || (ch[i-1]=='i') || (ch[i-1]=='e') || (ch[i-1]=='o') || (ch[i-1]=='u'))
        printf("DA\n");

    else if((ch[i-1]=='A') || (ch[i-1]=='I') || (ch[i-1]=='E') || (ch[i-1]=='O') || (ch[i-1]=='U'))
        printf("DA\n");

    else
        printf("NE\n");

    return 0;
}

 

Boldana linija je vazna. Naime, getchar i whitespaceove (razmak) i newlineove (znak za novi red) tretira kao znakove. Zato je tebe bunilo da ti ne vraca tocan broj znakova, ali zapravo je vracao, on je brojio i whitespaceove. Kod programiranja se moras spustiti na tu razinu da znakovi nisu samo slova, vec i razmaci, prelazak u novi red itd., kao i na mobitelu, kad lupis razmak on ti potrosi jedan znak. E sad, ovom boldanom linijom provjeravam dali je uneseni znak whitespace ili newline, ako je, ova naredba continue (nadam se da ju znas) preskace daljnju while petlju i ponovo krece ispocetka petlje, dakle, ostajemo na istom mjestu u polju gdje je unesen whitespace i cekamo novi znak i ne micemo se s tog mjesta dok god unosis ta dva znaka. Kad uneses slovo, slovo prepise preko whitespacea i pomice se za mjesto dalje. Ovaj drugi uvjet i < 19 je tu da ne prekoracis polje. Ovaj program upitnik racuna kao zadnji znak, a predzadnji je onaj prije upitnika. Ako se upitnik ne racuna kao zadnji znak, promjeni ovo i - 1 u i - 2.

Gentoo... it's like wiping your ass with silk. Or sandpaper.
Poruka je uređivana zadnji put sri 14.9.2011 1:03 (1domagoj1).
14 godina
neaktivan
offline
Programiranje u C-u

Hvala domagoj radi mi :)

 
0 0 hvala 0
14 godina
neaktivan
offline
Programiranje u C-u

Za ovaj zadatak:

 

Unosi se znakovni niz, niz se prekida kada se unese 100 znakova program treba ispisati ukupan broj slova A-Z u unesenom nizu.

Sad kako kaze da je znakovni niz to je string isao sam preko unosa sa scanf(%s) i gets sad rekli ste da nevalja koristiti funkciju gets jer ako pređem veličinu polja svojim unosom to ce biti nakrcano u polju, preko scanf-a ako napravim razmak tj. htjednem unijeti rečenicu, program će brojati samo za prvu unesenu rijec broj znakova, to mi opet nevalja, pa sam isao preko scanf(%c) to radi ali samo ako lupam enter kod svakog unosa znaka za to i sluzi %c, sada napravio sam ovako kao je u kodu testirao i radi, sad zanima me kada kaze unesi znakovni niz tj. string jel ja moram nuzno koristiti scanf(%s) i gets ili mogu napraviti kako sam napravio u kodu?

 

#include<stdio.h>
#include<stdlib.h>
int main()
{
    char x;
    int br=0,i=0;
    printf("Unesite znakovni niz:\n");
    while(i!=99)
    {
      x=getchar();
      if(x==' ' || x=='\n')
          continue;
      if((x>='a' && x<='z') || ((x>='A') && (x<='Z')))
          br++;
      i++;
    }
  printf("U unesenom nizu ima: %d znakova.\n",br);
  system("pause");
  return 0;
}

 
0 0 hvala 0
14 godina
neaktivan
offline
Re: Programiranje u C-u

hvala puno!

ispričavam se što se nisam prije zahvalio, a nisam ni vidio ><

14 godina
neaktivan
offline
Programiranje u C-u

Ne znam kako da vam se zahvalim, mislim da reći hvala nije dovoljno, stigli su mi rezultati sa popravnog ispita i položio sam programiranje :)))))

HVALA svima što ste mi pomogli u objasnjavanju zadataka. Kada sam uspio ovo sada poloziti i što sam dobro utrošio vrijeme preko ljeta da pohvatam osnove programiranja u C jeziku, sad kako sam ovo položio žao mi je da ovo sve što sam radio i mučio se oko ovoga otiđe u zaborav volio bih učiti i dalje programiranje jer će mi trebati za posao ali stiska sa predmetima na fakultetu nece mi bas puno ostaviti vremena za vjezbati programiranje ali ako mognem uhvatiti sta vremena pokusat cu učiti/vjezbati programiranje, u trećoj godini mi dolazi programiranje u C++, pa de ne bude problema kao ove godine da se programiranja hvatam u zadnji čas pokušati ću na ljeto učiti C++, vjerujem da će mi ići barem to lakše jer kako sam vidio sličan je C-jeziku, tako da će me to programiranje uvijek pratiti kroz moj studij...

Još jednom da ne nabarajam pojedinačno svakoga HVALA VAM SVIMA :)

Poruka je uređivana zadnji put sub 24.9.2011 2:13 (Broken).
 
1 0 hvala 0
13 godina
neaktivan
offline
Programiranje u C-u

Moze pomoć. zadatak glasi..

 

Napisi program koji učitava niz od deset brojeva, te ispisuje samo one koji su parni.

 problem mi se javi na kraju kada mi program nista ne ispisuje. pa provjerite gdje grijesim.

 

#include <stdio.h>

void main()
{
    int niz [10];
    int nniz [10];
    int i,j;
    int x=0;
    int    temp;

    for(i=0;i<10;i++){
       printf("Unesi brojeve:");
       scanf("%d",&niz[i]);
       if(niz[i]%2==0){
          nniz[x]=niz[i];
    }
    }

    for(i=0;i<10;i++){
       for(j=0;j<10;j++){
         
          if(nniz[x]<niz[i]){
            
          temp=nniz[x];
          nniz[x]=nniz[i];
          nniz[i]=temp;
       }
    }
    }
    printf("Niz parnih brojeva:",nniz[x]);
    for(i=0;i<x;i++)
       printf("\t%d",nniz[x]);
    printf("\n");
}

 
0 0 hvala 0
13 godina
offline
Programiranje u C-u

Ovo je mrtva tema, radije postaj u ovu.

0100011001000001010100000010000000110100001000000100110001001001010001100100010100100001
Moj PC  
1 0 hvala 0
15 godina
neaktivan
offline
Re: Programiranje u C-u
wall kaže...
problem mi se javi na kraju kada mi program nista ne ispisuje. pa provjerite gdje grijesim.

U redu.

 

wall kaže...
void main()

Tko vas ovo uči? Main nije funkcija void tipa, nego funkcija koja vraća integer, odnosno po završetku proslijeđuje operacijskom sustavu status o uspješnom (ili neuspješnom) izvršavanju programa.

 

wall kaže...
    for(i=0;i<10;i++){

       printf("Unesi brojeve:");
       scanf("%d",&niz[i]);
       if(niz[i]%2==0){
          nniz[x]=niz[i];
    }
    }

Ovo je grozno formatirano i nedostaje ti uvećavanje x varijable:

 

    for (i=0; i<10; i++)
    {
        printf("Unesi brojeve: ");
        scanf("%d", &niz[i]);

        if (niz[i]%2==0)
        {
            nniz[x]=niz[i];
            x++; //ovo
        }
    }

 

wall kaže...
    for(i=0;i<10;i++){

       for(j=0;j<10;j++){
         
          if(nniz[x]<niz[i]){
            
          temp=nniz[x];
          nniz[x]=nniz[i];
          nniz[i]=temp;
       }
    }
    }

Što se ovdje događa? Pokušaj sortiranja bubble sort algoritmom?  Ako da onda bi to trebalo ovako nekako izgledati:

 

    for (i=0; i<x; i++)
    {
        for (j=0; j<x-1; j++)
        {
            if (nniz[j]<nniz[j+1])
            {
                temp=nniz[j];
                nniz[j]=nniz[j+1];
                nniz[j+1]=temp;
            }
        }
    }

 

wall kaže...

    printf("Niz parnih brojeva:",nniz[x]);

Ako sam dobro skužio što pokušavaš, "nniz[x]" je višak u pozivu funkcije printf:

 

printf("Niz parnih brojeva: ");

 

wall kaže...
    for(i=0;i<x;i++)

       printf("\t%d",nniz[x]);

Svakom iteracijom petlje ispisuješ "nniz[x]", da možda ne želiš ispisivati "nniz[i]", i zašto koristiš "\t", nije li običan razmak pregledniji (i kompaktniji)?

 

    for (i=0; i<x; i++)
        printf(" %d", nniz[i]);

 

 

I za kraj cijeli kod u jednom komadu, čisto da vidiš što je astyle (plus malo mog petljanja) napravio od njega:

#include <stdio.h>

int main()
{
    int niz[10], nniz[10], i, j, x=0, temp;

    for (i=0; i<10; i++)
    {
        printf("Unesi brojeve: ");
        scanf("%d", &niz[i]);

        if (niz[i]%2==0)
        {
            nniz[x]=niz[i];
            x++;
        }
    }

    for (i=0; i<x; i++)
    {
        for (j=0; j<x-1; j++)
        {
            if (nniz[j]<nniz[j+1])
            {
                temp=nniz[j];
                nniz[j]=nniz[j+1];
                nniz[j+1]=temp;
            }
        }
    }

    printf("Niz parnih brojeva: ");

    for (i=0; i<x; i++)
        printf(" %d", nniz[i]);

    printf("\n");

    return 0;
}

 

Nije li ovo ugodnije za oko?

0xBADC0DE
Poruka je uređivana zadnji put pet 15.3.2013 1:27 (rustweaver).
15 godina
neaktivan
offline
Programiranje u C-u

znaci ovako, iman neku tekstualnu datoteku u kojoj prva 3 reda su neke gluposti a onda od 4. reda pa na dolje su stvari poslozene po stupcima, i sad kako bi ja pomakao pointer da mogu čitati od 4. reda pa do određenog i kako da te podatke iz stupaca spreman u različita polja?
EDIT: i kako ide onda za binarne datoteke? 

Come to the dark side.... we have cookies :)
Poruka je uređivana zadnji put uto 25.6.2013 23:40 (alias_noname).
Moj PC  
0 0 hvala 0
Nova poruka
E-mail:
Lozinka:
 
vrh stranice