سورس درخت دودویی به زبان C
در این بخش سورس درخت دودویی به زبان C را برای شما آماده کرده ایم که با استفاده از نرم افزار DevC++ با زبان برنامه نویسی C نوشته شده است. در ادامه می توانید توضیحات، تصاویر و همچنین فیلمی از نحوه اجرا شدن پروژه را مشاهده کنید.
توضیحات پروژه
در این پروژه، بعد از آن که برنامه اجرا شود، یک منوی 6 گزینه برای کاربر نمایش داده می شود که شامل گزینه های زیر است:
- Add Data
- Search By Id
- Inorder Traverse
- Postorder Traverse
- Preorder Traverse
- Quit
با انتخاب گزینه اول می توانید یک گره جدید به درخت باینری اضافه کنید. با انتخاب گزینه دوم می توانید با وارد کرد شناسه (ID) یک گره، اطلاعات آن گره را مشاهده کنید. با انتخاب سه گزینه بعدی می توانید محتویات درخت باینری را در سه حالت InOrder، PostOrder و PreOrder مشاهده کنید. گزینه آخر هم برای خروج از برنامه استفاده می شود.
شما با مشاهده سورس کد این پروژه می توایند نحوه کار با اشاره گرها، ایجاد درخت باینری، نحوه پیمایش گره ها، افزودن گره جدید و غیره را یاد گرفته و مهارت برنامه نویسی خودتان را تا حد زیادی ارتقا دهید.
قسمت های از سورس کد
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 | #include<stdio.h> #include<stdlib.h> #include<conio.h> struct tree { tree *left; int id; char name[30]; char family[30]; float avg; tree *right; }; /***************************/ int menu_select(); void insert(tree **); int search(struct tree *,int); void inorder(tree *s); void postorder(tree *s); void preorder(tree *s); /****************************/ int main() { tree *start=NULL; int num=0; while(1) { clrscr(); switch(menu_select()) { case 1: insert(&start); break; case 2: printf("Enter Id To Search:"); scanf("%d",&num); if(search(start,num)) printf("Id Found."); else printf("Id Not Found."); getch(); break; case 3: clrscr(); printf("\n Show Tree In Inorder:\n"); inorder(start); getch(); break; case 4: clrscr(); printf("\n Show Tree In Postorder:\n"); postorder(start); getch(); break; case 5: clrscr(); printf("\n Show Tree In Preorder:\n"); preorder(start); getch(); break; case 6: exit(0); } } return 0; } |
هیچ نظری ثبت نشده است