C DİLİ KULLANARAK BİLGİSAYAR PROGRAMLAMA ... - 320Volt
C DİLİ KULLANARAK BİLGİSAYAR PROGRAMLAMA ... - 320Volt
C DİLİ KULLANARAK BİLGİSAYAR PROGRAMLAMA ... - 320Volt
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
case '2': printf("Adı \n"); gets(s);<br />
iptal(s);<br />
break;<br />
case '3': exit(0);break;<br />
}<br />
} while (1);<br />
}<br />
Problem : Polinomlar sıralı bağlı listede saklı. İki polinomun toplamını üçücnü polinomda oluşturan program<br />
B.2 Listelerin Özel Biçimleri (Uygulamaları)<br />
B.2.1 Stack (yığın) : Son giren ilk çıkar (LIFO)<br />
(Fonksiyon çağırıldığında geri dönüş adresi, Fonksiyona gönderilecek parametreler )<br />
114<br />
Örnek B.2.1: Stack kullanarak girilen cümleyi kelimeleri bozmadan tersten yazdır<br />
#include <br />
#include <br />
struct stackyapi {<br />
char deger[50];<br />
struct stackyapi *sonraki;<br />
};<br />
typedef struct stackyapi stacknode;<br />
typedef stacknode *stackptr;<br />
stackptr top;<br />
void push(char *gelen)<br />
{<br />
stackptr newnode;<br />
newnode = malloc(sizeof(stacknode));<br />
strcpy(newnode->deger, gelen);<br />
newnode->sonraki = top;<br />
top = newnode;<br />
}<br />
int pop(char *giden)<br />
{<br />
stackptr oldnode;<br />
}<br />
if (top != NULL) {<br />
oldnode = top;<br />
strcpy(giden, top->deger);<br />
top = top->sonraki;<br />
free(oldnode);<br />
return 0;<br />
}<br />
else<br />
return 1; /* yığın boş */