Last active
February 20, 2023 04:14
-
-
Save max-programming/bcb5151c0241f83c14ada9ff555afa7c to your computer and use it in GitHub Desktop.
DFS All Practicals
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <stdio.h> | |
int n = 5; | |
int arr[5]; | |
void print() | |
{ | |
for (int i = 0; i < n; i++) | |
{ | |
printf("%d :- %d\n", i, arr[i]); | |
} | |
} | |
void insert() | |
{ | |
int j, d, i; | |
printf("Enter Index of number to be Inserted:"); | |
scanf("%d", &j); | |
printf("Enter Number to be Inserted:"); | |
scanf("%d", &d); | |
for (i = n - 1; i >= j; i--) | |
{ | |
arr[i + 1] = arr[i]; | |
} | |
n++; | |
arr[j] = d; | |
print(); | |
} | |
void delete() | |
{ | |
int j, i; | |
printf("Enter Index of number to be deleted:"); | |
scanf("%d", &j); | |
for (i = j; i < n; i++) | |
{ | |
arr[i] = arr[i + 1]; | |
} | |
n--; | |
print(); | |
} | |
void search() | |
{ | |
int d, i, f = 0; | |
printf("Enter Element to be Searched:"); | |
scanf("%d", &d); | |
for (i = 0; i < n; i++) | |
{ | |
if (d == arr[i]) | |
{ | |
printf("The Index No. of Element is %d\n", i); | |
} | |
} | |
if (f == 0) | |
{ | |
printf(""); | |
} | |
} | |
void replace() | |
{ | |
int j, d; | |
printf("Enter Index of number to be replaced:"); | |
scanf("%d", &j); | |
printf("Enter Number to be replaced:"); | |
scanf("%d", &d); | |
arr[j] = d; | |
print(); | |
} | |
void main() | |
{ | |
int ch, m; | |
for (int i = 0; i < 5; i++) | |
{ | |
printf("Enter Element:"); | |
scanf("%d", &arr[i]); | |
} | |
while (m != 0) | |
{ | |
printf("Enter your Choice:- \n 1)Print \n 2)Insert \n 3)Delete \n 4)Search \n 5)Replace \n"); | |
scanf("%d", &ch); | |
switch (ch) | |
{ | |
case 1: | |
print(); | |
break; | |
case 2: | |
insert(); | |
break; | |
case 3: | |
delete(); | |
break; | |
case 4: | |
search(); | |
break; | |
case 5: | |
replace(); | |
break; | |
default: | |
printf("Invalid Choice"); | |
break; | |
} | |
printf("Enter 0 to stop and press any number to continue"); | |
scanf("%d", &m); | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <stdio.h> | |
struct Student | |
{ | |
char enrollment_number[15], name[20]; | |
float marks1, marks2, marks3, avg; | |
}; | |
void show_output(struct Student s) | |
{ | |
printf("Enrollment Number - %s\n", s.enrollment_number); | |
printf("Name - %s\n", s.name); | |
printf("Marks 1 - %.2f\n", s.marks1); | |
printf("Marks 2 - %.2f\n", s.marks2); | |
printf("Marks 3 - %.2f\n", s.marks3); | |
printf("Average Marks - %.2f\n", s.avg); | |
} | |
void main() | |
{ | |
struct Student students[3]; | |
for (int i = 0; i < 3; i++) | |
{ | |
struct Student s = students[i]; | |
printf("\nEnter details for student %d\n", i + 1); | |
printf("Enter your enrollment number: "); | |
scanf("%s", &s.enrollment_number); | |
printf("Enter your name: "); | |
scanf("%s", &s.name); | |
printf("Enter marks 1: "); | |
scanf("%f", &s.marks1); | |
printf("Enter marks 2: "); | |
scanf("%f", &s.marks2); | |
printf("Enter marks 3: "); | |
scanf("%f", &s.marks3); | |
s.avg = (s.marks1 + s.marks2 + s.marks3) / 3; | |
show_output(s); | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <stdio.h> | |
int stack[5]; | |
int top = -1; | |
int n = 5; | |
void display() | |
{ | |
for (int i = 0; i < top + 1; i++) | |
{ | |
printf("%d\n", stack[i]); | |
} | |
} | |
int pop() | |
{ | |
if (top == -1) | |
{ | |
printf("Stack Underflow\n"); | |
return -1; | |
} | |
int value = stack[top]; | |
top--; | |
return value; | |
} | |
int peep() | |
{ | |
if (top == -1) | |
{ | |
printf("Stack Underflow\n"); | |
return -1; | |
} | |
return stack[top]; | |
} | |
void push(int x) | |
{ | |
if (top >= n + 1) | |
{ | |
printf("Stack Overflow\n"); | |
return; | |
} | |
top++; | |
stack[top] = x; | |
} | |
void main() | |
{ | |
int choice, x, removed_element, topmost; | |
do | |
{ | |
printf("Enter a number: \n1. Display\n2. Add\n3. Remove Topmost\n4. Display Topmost\n> "); | |
scanf("%d", &choice); | |
switch (choice) | |
{ | |
case 1: | |
display(); | |
break; | |
case 2: | |
printf("Enter element to add: "); | |
scanf("%d", &x); | |
push(x); | |
break; | |
case 3: | |
removed_element = pop(); | |
printf("Removed element was %d\n", removed_element); | |
break; | |
case 4: | |
topmost = peep(); | |
printf("Topmost element is %d\n", topmost); | |
break; | |
default: | |
break; | |
} | |
} while (choice != 0); | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <stdio.h> | |
char stack[10]; | |
int top = -1; | |
int n = 10; | |
char pop() | |
{ | |
if (top == -1) | |
{ | |
// printf("Stack Underflow\n"); | |
return; | |
} | |
int value = stack[top]; | |
top--; | |
return value; | |
} | |
void push(char x) | |
{ | |
if (top >= n + 1) | |
{ | |
// printf("Stack Overflow\n"); | |
return; | |
} | |
top++; | |
stack[top] = x; | |
} | |
void main() | |
{ | |
char str[10], rev[10]; | |
int i = 0; | |
printf("Enter some text: "); | |
gets(str); | |
while (str[i] != '\0') | |
{ | |
push(str[i]); | |
i++; | |
} | |
i = 0; | |
while (top != -1) | |
{ | |
rev[i] = pop(); | |
i++; | |
} | |
printf("Reversed string is: "); | |
puts(rev); | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <stdio.h> | |
#include <stdlib.h> | |
struct Node | |
{ | |
int data; | |
struct Node *next; | |
} *start = NULL; | |
void insert_front() | |
{ | |
int value; | |
struct Node *new_node = (struct Node *)malloc(sizeof(struct Node)); | |
printf("Enter data to front: "); | |
scanf("%d", &value); | |
new_node->data = value; | |
new_node->next = start; | |
start = new_node; | |
} | |
void insert_end() | |
{ | |
int value; | |
struct Node *last = start; | |
struct Node *new_node = (struct Node *)malloc(sizeof(struct Node)); | |
printf("Enter data: "); | |
scanf("%d", &value); | |
new_node->data = value; | |
new_node->next = NULL; | |
if (start == NULL) | |
{ | |
start = new_node; | |
} | |
else | |
{ | |
while (last->next != NULL) | |
{ | |
last = last->next; | |
} | |
last->next = new_node; | |
} | |
} | |
void delete_front() | |
{ | |
if (start == NULL) | |
{ | |
printf("Underflow\n"); | |
return; | |
} | |
struct Node *ptr = start; | |
start = start->next; | |
free(ptr); | |
} | |
void delete_end() | |
{ | |
if (start == NULL) | |
{ | |
printf("Underflow\n"); | |
return; | |
} | |
struct Node *last = start; | |
struct Node *pre = start; | |
while (last->next != NULL) | |
{ | |
pre = last; | |
last = last->next; | |
} | |
pre->next = NULL; | |
free(last); | |
} | |
void display() | |
{ | |
struct Node *last = start; | |
while (last != NULL) | |
{ | |
printf("%d->", last->data); | |
last = last->next; | |
} | |
printf("NULL\n"); | |
} | |
void main() | |
{ | |
int choice; | |
do | |
{ | |
printf("Enter a choice. 1. Insert Front, 2. Insert End. 3. Delete Front. 4. Delete End. 5. Display\n"); | |
scanf("%d", &choice); | |
switch (choice) | |
{ | |
case 1: | |
insert_front(); | |
break; | |
case 2: | |
insert_end(); | |
break; | |
case 3: | |
delete_front(); | |
break; | |
case 4: | |
delete_end(); | |
break; | |
case 5: | |
display(); | |
break; | |
default: | |
break; | |
} | |
} while (choice != 6); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Missing practicals are on the repository
https://github.com/max-programming/dfs