w3resource

C Exercises: Find heights of the top three building in descending order from eight given buildings


Find heights of top three tallest buildings

Write a C program to find the heights of the top three buildings in descending order from eight given buildings.

Input:
0 <= height of building (integer) <= 10,000

Sample Solution:

C Code:

#include<stdio.h>

int main(){

  int heights[10], i, j, h, max_heights;

  // Prompt the user to input heights of the top eight buildings
  printf("Input heights (integer values) of the top eight buildings:\n");

  // Read the heights into the array
  for(i = 0; i < 8; i++){
    scanf("%d", &heights[i]);
  }

  // Sorting the heights in descending order
  for(i = 0; i < 8; i++){
    max_heights = i;
    for(j = i; j < 8; j++){
      if(heights[j] > heights[max_heights]){
        max_heights = j;
      }
    }
    h = heights[max_heights];
    heights[max_heights] = heights[i];
    heights[i] = h;
  }

  // Printing the heights of the top three buildings
  printf("\nHeights of the top three buildings:\n");
  printf("%d\n%d\n%d\n", heights[0], heights[1], heights[2]);

  return 0; // End of program
}

Sample Output:

Input heights(integer values) of the top eight buildings:
25
15
45
22
35
18
95
65

Heights of the top three building:
95
65
45

Flowchart:

C Programming Flowchart: Find heights of the top three building in descending order from eight given buildings.


For more Practice: Solve these Related Problems:

  • Write a C program to sort an array of building heights in descending order and print the top three values.
  • Write a C program to use selection sort to determine the three maximum values from an array of eight building heights.
  • Write a C program to scan building heights into an array, then iterate to extract and display the top three heights without sorting the entire array.
  • Write a C program to use a temporary array to store and then display the three tallest building heights from user input.

Go to:


PREV : Check if a string ends with another string.
NEXT : Sum two integers and count digits in the result.

C programming Code Editor:



Have another way to solve this solution? Contribute your code (and comments) through Disqus.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.