Download as pdf or txt
Download as pdf or txt
You are on page 1of 3

#include <stdio.

h>
#include <stdlib.h>

float celsiusToFahrenheit(float celsius[], float fahrenheit[], int numberOfTemp);


float bubbleSort(float arr[], int numberOfTemp);
float insertionSort(float arr[], int numberOfTemp);
float selectionSort(float arr[], int numberOfTemp);

int main() {
int numberOfTemp;

printf("Enter the number of temperatures: ");


scanf("%d", &numberOfTemp);

float celsius[numberOfTemp];
float fahrenheit[numberOfTemp];

printf("\nEnter %d temperatures in Celsius:\n", numberOfTemp);


for (int i = 0; i < numberOfTemp; i++) {
scanf("%f", &celsius[i]);
fahrenheit[i] = (celsius[i] * 9 / 5) + 32;
}

bubbleSort(fahrenheit, numberOfTemp);
printf("\nSorted temperatures using Bubble Sort:\n");
for (int i = 0; i < numberOfTemp; i++) {
printf("%.2f ", fahrenheit[i]);
}

insertionSort(fahrenheit, numberOfTemp);
printf("\n\nSorted temperatures using Insertion Sort:\n");
for (int i = 0; i < numberOfTemp; i++) {
printf("%.2f ", fahrenheit[i]);
}

selectionSort(fahrenheit, numberOfTemp);
printf("\n\nSorted temperatures using Selection Sort:\n");
for (int i = 0; i < numberOfTemp; i++) {
printf("%.2f ", fahrenheit[i]);
}

return 0;
}

float bubbleSort(float arr[], int numberOfTemp) {


for (int i = 0; i < numberOfTemp - 1; i++) {
for (int j = 0; j < numberOfTemp - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
float temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}

float insertionSort(float arr[], int numberOfTemp) {


for (int i = 1; i < numberOfTemp; i++) {
float current = arr[i];
int j = i - 1;
while (j >= 0 && arr[j] > current) {
arr[j + 1] = arr[j];
j--;
}
arr[j + 1] = current;
}
}

float selectionSort(float arr[], int numberOfTemp) {


for (int i = 0; i < numberOfTemp - 1; i++) {
int minIndex = i;
for (int j = i + 1; j < numberOfTemp; j++) {
if (arr[j] < arr[minIndex]) {
minIndex = j;
}
}
float temp = arr[minIndex];
arr[minIndex] = arr[i];
arr[i] = temp;
}
}

You might also like