Архив блога

воскресенье, 30 января 2011 г.

Задача 153.

Напишите программу, которая методом прямого выбора сортирует по убыванию  введенный с клавиатуры одномерный массив.

/*
    Программа методом прямого выбора сортирует
    массив по убыванию.
*/
#include "locale.h"
#include "curses.h"
#include "stdio.h"
#include "stdlib.h"
#include "time.h"

#define HB 22

main()
{
    int s[HB];
    int i, j, k;
    int min;
    int temp;
    char *log;
    time_t t;
   
    log = setlocale(LC_CTYPE,"ru_RU.UTF-8");
   
   
    initscr();
   
    srand((unsigned) time(&t));
    printw("Сортировка массива по убыванию.\n");
   
    for(i = 0; i < HB; i++)
    {
    s[i] = rand() % 10 + 1;
    printw("%i ", s[i]);
    }
   
    printw("\n");
   
    for(i = 0; i < HB - 1; i++)
    {
    min = i;
    for(k = i + 1; k < HB; k++)
        if(s[k] > s[min]) min = k;
       
    temp = s[i];
    s[i] = s[min];
    s[min] = temp;
    for(j = 0; j < HB; j++)
        printw("%i ",s[j]);
    printw("\n");
    }
   
    printw("\n");
   
    for(k = 0; k < HB; k++)
    {
    printw("%i ", s[k]);
    }
   
    getch();
    endwin();
    return 0;
}

Комментариев нет:

Отправить комментарий