[ Andrija91 @ 23.01.2010. 10:12 ] @
Code:

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

int main(int argc, char *argv[])
{
  char pal[1000],npal[1000],fin[1000];
  int i,j=1,len;
  scanf("%s",&pal);
  len=strlen(pal);
  for(i=len;i>=1;i--)
  {
   npal[j]=pal[i];
   j+=1;
  } 
  printf("%s",npal);
  system("PAUSE");    
  return 0;
}

Zbog cega ovo ne radi? Kada pokrenem program ispise jedan bezvezan znak, a trebalo bi da ispise znakove unete reci unazad!?

EDIT X Files: Milim Vas koristite CODE tagove.

[Ovu poruku je menjao X Files dana 23.01.2010. u 12:06 GMT+1]
[ GORSHTAK @ 23.01.2010. 11:04 ] @
Niz nikad ne počinje sa 1 već sa nula, tako da ti treba za početak j=0.
Takođe ne završava se sa len već sa len-1: for(i=len-1; i>=0; i--)
I za kraj, unutar for petlje nisi stavio index na originalnom nizu: npal[j] = pal[ i];
ili si stavio ali je forum to prepoznao kao italic :)

Jedan mali savet, za svaki slučaj na na nov niz stavi npal[len] = '\0', neki kompajleri će ti automatski staviti kraj stringa, a neki neće



[Ovu poruku je menjao GORSHTAK dana 23.01.2010. u 12:18 GMT+1]
[ Andrija91 @ 23.01.2010. 11:17 ] @
EDIT: X Files
Molim Vas da zbog preglednosti i potencijalnog razrešavanja konflikata izmedju ITALIC tag-a i "indeks od 'i'", kod upisujete između predviđenih tag-ova:
[code]
/* ... */
[/code]

Hvala na razumevanju i srećan rad.

Code:

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

int main(int argc, char *argv[])
{
  char pal[1000],npal[1000];
  int i,j=0,len;
  scanf("%s",&pal);
  len=strlen(pal);
  for(i=len-1;i>=0;i--)
  {
   npal[j]=pal[i];
   j+=1;
  } 
  printf("%s",npal);
  system("PAUSE");    
  return 0;
}


Uradio sam kao sto si rekao. Sad mi ispise unetu rec u obrnutom redosledu, ali u produzetku te reci ispisuje bezvezne znakove? Jos jedno pitanje: zbog cega prijavljuje gresku kad stavim npal=pal;?
[ Picsel @ 23.01.2010. 11:21 ] @
Citat:
Jedan mali savet, za svaki slučaj na na nov niz stavi npal[len] = '\0', neki kompajleri će ti automatski staviti kraj niza, a neki neće


To. Na kraj npal niza stavi 0 karakter. Znaci pre printf stavi npal[j]=0;
[ Andrija91 @ 23.01.2010. 11:24 ] @
Sada sve radi. Hvala!