10. What will be the output of the following code snippet?
#include<stdio.h>
#include<stdlib.h>
struct Node {
int val;
struct Node* next;
} *head;
int linear_search(struct Node *temp, int value) {
if(temp == NULL)
return 0;
if(temp->val == value)
return 1;
return linear_search(temp->next, value);
}
int main() {
int arr[6] = {1, 2, 3, 4, 5, 6};
int n = 6, i;
head = (struct Node*)malloc(sizeof(struct Node));
head->next = NULL;
struct Node *temp = head;
for(i = 0; i < n; i++) {
struct Node *newNode = (struct Node*)malloc(sizeof(struct Node));
newNode->next = NULL;
newNode->val = arr[i];
temp->next = newNode;
temp = temp->next;
}
int ans = linear_search(head->next, 6);
if(ans == 1)
printf("Found");
else
printf("Not found");
return 0;
}
What will be the output when this code is executed?