[ query @ 22.10.2005. 12:41 ] @
U C imam dosta problema sa ARRAY i POINTERS, pa se nadam da ce mi neko pomoci da shvatim ove kodove. Ovaj zadatak je: Zamisli da acStudent sadrzi neki string(ime). Treba da pcTitel naprijed od tog imena dodam, ako moze stati. Koja konstrukcija odgovara tome? Code: #define MAXNAAM 40 int iLt; char acStudent [MAXNAAM + 1]; char pcTitel = “ing. “; /*5 tekens */ A Code: iLt = strlen (acStudent); if (iLt <= MAXNAAM – 5) { strcpy (acStudent + 5, acStudent); strcpy (acStudent, pcTitel); } B Code: iLt = strlen (acStudent); if (iLt <= MAXNAAM – 5) { int iTel; for (iTel = iLt + 5; iTel >= 5; iTel--) { acStudent[iTel] = acStudent[iTel – 5]; }; strcpy(acStudent, pcTitel); } C Code: iLt = strlen (acStudent); if (iLt <= MAXNAAM – 5) { int iTel; char cTemp = acStudent[0]; for (iTel = iLt + 5; iTel > 5; iTel--) { acStudent[iTel] = acStudent[iTel – 5]; }; strcpy(acStudent, pcTitel); acStudent[5] = cTemp; } D Code: iLt = strlen (acStudent); if (iLt <= MAXNAAM – 5) { int iTel; for (iTel = 0; iTel <= iLt + 5; iTel++) { if (iTel < 5) { acStudent[iTel] = pcTitel[iTel]; } else { acStudent[iTel] = acStudent[iTel - 5]; } } } Znam da je odgovor C, ali moze li mi neko pojasniti sta rade svi ovi kodovi kod A, B, C i D. Tako cu lakse skontati razliku izmedju ovoga. Unaprijed hvala za trud. ;) |