Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
bravejo
0 / 0 / 0
Регистрация: 14.12.2012
Сообщений: 10
1

Упорядочить массив по возрастанию методом выбора

14.12.2012, 19:27. Просмотров 836. Ответов 3
Метки нет (Все метки)

Дан массив вещественных чисел, состоящих из N(20) элементов. Упорядочить ее по возрастанию методом выбора.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.12.2012, 19:27
Ответы с готовыми решениями:

Упорядочить одномерный числовой массив по возрастанию методом выбора
Упорядочить одномерный числовой массив по возрастанию методом выбора. При этом выбирается...

Упорядочить матрицу по возрастанию методом выбора
Дан массив вещественных чисел, состоящих из N(20) элементов. Упорядочить ее по возрастанию методом...

Строки матрицы упорядочить по возрастанию методом линейного выбора с подсчетом
Если сумма элементов матрицы А размерности nxn больше удвоенной суммы максимального и минимального...

Упорядочить элементы столбцов матрицы по возрастанию их значений методом выбора
Составить блок-схему алгоритма и программу на языке С согласно с заданием, полученным от...

Упорядочить массив А (12) в порядке убывания методом выбора
Прошу помощи: Упорядочить массив А (12) в порядке убывания методом выбора. на СИ

3
MrGluck
Форумчанин
Эксперт CЭксперт С++
8121 / 4973 / 1436
Регистрация: 29.11.2010
Сообщений: 13,456
15.12.2012, 02:33 2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include <stdio.h>
#include <stdlib.h>
 
 
void selection(float *a, const int len)
{
    int i, j, min;
    float tmp;
    for (i = 0; i < len-1; i++)
    {
        min = i;
        for(j = i+1; j < len; j++)
            if(a[j] < a[min])
                min = j;
        if(min != i)
        {
            tmp = a[i];
            a[i] = a[min];
            a[min] = tmp;
        }
    }
}
 
int main()
{
    const int N = 20;
    int i;
    float *a = (float*)calloc (N, sizeof(float));
    srand(time(NULL));
    
    printf("Before:\n");
    for (i=0; i < N; i++)
    {
        a[i] = (rand() % 100) / 10.0;
        printf("%.1f ", a[i]);
    }
    selection(a, N);
    printf("\nAfter:\n");
    for (i=0; i < N; i++)
        printf("%.1f ", a[i]);
        
    free(a);
    return 0;
}
0
Kuzia domovenok
2569 / 2241 / 565
Регистрация: 25.03.2012
Сообщений: 8,113
Записей в блоге: 1
Завершенные тесты: 1
15.12.2012, 03:01 3
Цитата Сообщение от MrGluck Посмотреть сообщение
float *a = (float*)calloc (N, sizeof(float));
ты уже забыл статические массивы? Извини, но просто человек явно ещё даже указатели не проходил, выделение памяти соответственно тоже. Я постарался чуть попроще написать.
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N 20
int main()
{
    int i, j, min;
    float tmp;
    float a[N];
    srand(time(NULL)); 
    printf("Before:\n");
    for (i=0; i < N; i++)
    {
        a[i] = (rand() % 100) / 10.0;
        printf("%.1f ", a[i]);
    }   
    for (i = 0; i < N-1; i++)
    {
        min = i;
        for(j = i+1; j < N; j++)
            if(a[j] < a[min])
                min = j;
        if(min != i)
        {
            tmp = a[i];
            a[i] = a[min];
            a[min] = tmp;
        }
    }
    printf("\nAfter:\n");
    for (i=0; i < N; i++)
        printf("%.1f ", a[i]);
    return 0;
}
2
MrGluck
Форумчанин
Эксперт CЭксперт С++
8121 / 4973 / 1436
Регистрация: 29.11.2010
Сообщений: 13,456
15.12.2012, 06:04 4
Kuzia domovenok, я все понимаю, но функцию то зачем в main засунул?
0
15.12.2012, 06:04
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.12.2012, 06:04

Упорядочить массив по возрастанию методом быстрой сортировки
Ввести длину массива и массив. Упорядочить массив по возрастанию методом быстрой сортировки:...

Упорядочить одномерный числовой массив методом по возрастанию обменов
1. Упорядочить одномерный числовой массив методом по возрастанию обменов. При этом сравниваются два...

Упорядочить строки по убыванию методом выбора
// лаба 6.cpp: определяет точку входа для консольного приложения. // #include &quot;stdafx.h&quot;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru