hocam kodunuzun for loopları çok karışık geldi bana keşke daha basit düşünsemişsiniz, karakter bitene kadar ilk loop ikinci loop ise ilk loopun kaç kere döndüğü kadar karakter yazdırırsa iş biter, kodunuzu anlamak için vakit kaybetmeden yeni bitanesini yazdım
char c, sentence[80];
int length = 0;
puts("Enter a line of text: \n");
while (( c = getchar()) != '\n')
sentence[length++] = c;
sentence[length] = '\0';
printf("\n");
int i=0,j=0;
int counter = 0;
while(length>=0)
{
for(j=0;j<=i && length>=0;j++){
putchar(sentence[counter++]);
length--;
}
printf("\n");
i++;
}Kolay Gelsin..
Hocam teşekkür ederim. Sorunu çözdüm. strlen(metin) fonksiyonu dizideki karakter kadar satır döndürüyor for içinde. Örneğin 16 karakter var dizide.
a
bc
def
ghıi
....
....
16 satır gidiyor. 16 satırlık karakter olmayınca da anlamsız karakterler yazdırıyor . Cevabın ,emeğin için teşekkür ederim üstat ihtiyacı olan arkadaşlar için çok faydalı bir paylaşım yapmışsınız.