fork download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. void swap(int *a, int *b){
  5. int tmp;
  6. tmp = *a;
  7. *a = *b;
  8. *b = tmp;
  9. }
  10. void BubbleSort(int a[], int n){
  11. int i, j;
  12. for(i = 0; i < n-1; i++){
  13.  
  14. for(j = n-1; j > i; j--){
  15.  
  16. if(a[j] > a[j-1]){
  17. swap(&a[j], &a[j-1]);
  18. }
  19.  
  20. }
  21.  
  22. }
  23. }
  24.  
  25. int main(){
  26.  
  27. int n,k,i;
  28. int *a;
  29. scanf("%d", &n);
  30. a = (int *)malloc(sizeof(int) * n);
  31. if(a == NULL){
  32. printf("ERROR\n");
  33. return -1;
  34. }
  35. for(i = 0; i < n; i++){
  36. scanf("%d", &a[i]);
  37. }
  38. scanf("%d", &k);
  39. BubbleSort(a, n);
  40. printf("%d番目に大きい数 = %d\n", k, a[k-1]);
  41. free(a);
  42. return 0;
  43. }
Success #stdin #stdout 0s 5284KB
stdin
7
32 31 67 98 23 1 3
3
stdout
3番目に大きい数 = 32