https://www.acmicpc.net/problem/2693
문제
배열 A가 주어졌을 때, N번째 큰 값을 출력하는 프로그램을 작성하시오.
배열 A의 크기는 항상 10이고, 자연수만 가지고 있다. N은 항상 3이다.
입력
첫째 줄에 테스트 케이스의 개수 T(1 ≤ T ≤ 1,000)가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 배열 A의 원소 10개가 공백으로 구분되어 주어진다. 이 원소는 1보다 크거나 같고, 1,000보다 작거나 같은 자연수이다.
출력
각 테스트 케이스에 대해 한 줄에 하나씩 배열 A에서 3번째 큰 값을 출력한다.
전체 소스코드 ->
#include <stdio.h>
void Sort(int arr[],int n){
int i,j;
int temp;
for(i = 0;i<n-1;i++){
for(j = 0;j<(n-i)-1;j++){
if(arr[j]<arr[j+1]){
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
int main(void){
int temp;
int n;
scanf("%d",&n);
int arr[10];
for(int i = 0;i<n;i++){
for(int j = 0;j<10;j++){
scanf("%d",&arr[j]);
}
Sort(arr,10);
printf("%d\n",arr[2]);
}
}
'정렬' 카테고리의 다른 글
Find First and Last Position of Element in Sorted Array C++ (0) | 2022.12.25 |
---|---|
백준 20551 Sort 마스터 배지훈의 후계자 (0) | 2022.08.06 |
백준 11399 C언어 (0) | 2021.10.04 |
백준 1026번 C언어 (0) | 2021.10.01 |
백준 2750 C언어 (버블정렬 구현과 성능평가) (0) | 2021.09.25 |