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

// Definition of a binary tree node
struct Node {
    int data;
    struct Node* left;
    struct Node* right;
};

// Function to create a new node
struct Node* createNode(int data) {
    struct Node* newNode = (struct Node*)malloc(sizeof(struct Node));
    newNode->data = data;
    newNode->left = NULL;
    newNode->right = NULL;
    return newNode;
}

// Inorder traversal
void inorderTraversal(struct Node* root) {
    if (root == NULL) {
        return;
    }
    inorderTraversal(root->left);
    printf("%d ", root->data);
    inorderTraversal(root->right);
}

// Preorder traversal
void preorderTraversal(struct Node* root) {
    if (root == NULL) {
        return;
    }
    printf("%d ", root->data);
    preorderTraversal(root->left);
    preorderTraversal(root->right);
}

// Postorder traversal
void postorderTraversal(struct Node* root) {
    if (root == NULL) {
        return;
    }
    postorderTraversal(root->left);
    postorderTraversal(root->right);
    printf("%d ", root->data);
}

// Test the tree traversal algorithms
int main() {
    // Create a sample binary tree
    struct Node* root = createNode(1);
    root->left = createNode(2);
    root->right = createNode(3);
    root->left->left = createNode(4);
    root->left->right = createNode(5);

    int choice;
    printf("Choose the type of traversal:\n");
    printf("1. Inorder traversal\n");
    printf("2. Preorder traversal\n");
    printf("3. Postorder traversal\n");
    scanf("%d", &choice);

    switch (choice) {
        case 1:
            printf("Inorder traversal: ");
            inorderTraversal(root);
            printf("\n");
            break;
        case 2:
            printf("Preorder traversal: ");
            preorderTraversal(root);
            printf("\n");
            break;
        case 3:
            printf("Postorder traversal: ");
            postorderTraversal(root);
            printf("\n");
            break;
        default:
            printf("Invalid choice\n");
            break;
    }

    return 0;
}

Embed on website

To embed this program on your website, copy the following code and paste it into your website's HTML: