Форум программистов, компьютерный форум, киберфорум
Наши страницы

C для начинающих

Войти
Регистрация
Восстановить пароль
 
programminf
0 / 0 / 0
Регистрация: 03.01.2017
Сообщений: 8
#1

Вывести на экран различные элементы массива целых чисел в порядке возрастания их числа повторений - C (СИ)

09.01.2017, 20:36. Просмотров 224. Ответов 3
Метки нет (Все метки)

1. Вывести на экран различные элементы массива целых чисел в порядке возрастания их числа повторений.

Добавлено через 7 часов 11 минут
можно на си++
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.01.2017, 20:36
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вывести на экран различные элементы массива целых чисел в порядке возрастания их числа повторений (C (СИ)):

Дан массив А$(10). Вывести элементы массива в порядке возрастания - C (СИ)
Дан массив А$(10) вывести элементы массива в порядке зростания. Спасибо зарание.

Расположить элементы массива в порядке возрастания и в порядке убывания - C (СИ)
Здравствуйте! Начинаю изучать Си, нужно написать простенькую программу. Мне рассказали про функцию swap, но я не знаю, как применить ее в...

Отсортировать элементы строк матрицы в порядке возрастания, а строки - в порядке возрастания сумм элементов - C (СИ)
Задать с клавиатуры количество целочисленных матриц. Данные получить с помощью датчика случайных чисел RANDOM. Отсортировать элементы...

Найти сумму целых положительных чисел, кратных 3 и меньших 100, вывести числа на экран - C (СИ)
Доброго времени суток, товарищи. Задание следующее: Найти сумму целых положительных чисел, кратных 3 и меньших 100, вывести числа на...

В порядке возрастания вывести введенные 3 числа - C (СИ)
В общем нужно составить программу которая будет в порядке возрастания выводить введенные 3 числа. Вот что я наработал, однако что - то не...

Отрицательные элементы массива отсортировать в порядке возрастания - C (СИ)
дана задачка: есть вещественный массив и отрицательные элементы надо отсортировать в порядке возрастания, а остальные элементы без...

3
LFC
728 / 533 / 294
Регистрация: 17.09.2015
Сообщений: 1,596
10.01.2017, 12:00 #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
#include <stdio.h>
#include <stdlib.h>
#define N 18
#define M 2
int main()
{
    int i, j = 0, k = 1, flag, tmp, A[N] = {23,35,12,23,23,76,12,89,12,12,45,76,12,76,35,12,23,90}, B[M][N];
    B[0][0] = A[0];
    B[1][0] = 1;
    for(i = 1; i < N; i++){
        for(j = 0, flag = 0; j < k; j++){
            if(A[i] == B[0][j]){
                B[1][j]++;
                flag = 1;
            }
        }
         if(!flag){
            B[0][k] = A[i];
            B[1][k++] = 1;
         }
    }
    for(i = 1; i < k; i++)
        for(j = i; j > 0 && B[1][j - 1] > B[1][j]; j--)
            for(int m = 0; m < M; m++){
                tmp = B[m][j - 1];
                B[m][j - 1] = B[m][j];
                B[m][j] = tmp;
            }
    for(i = 0; i < k; i++)
        printf("%d %d\n", B[0][i], B[1][i]);
    return 0;
}
1
HighPredator
5545 / 1858 / 346
Регистрация: 10.12.2010
Сообщений: 5,443
Записей в блоге: 2
10.01.2017, 14:01 #3
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
 
typedef struct
{
    int value;
    size_t count;
} StatisticData;
 
int compare(const void* a, const void* b)
{
    int result = 0;
    
    StatisticData* itemA = (StatisticData*)a;
    StatisticData* itemB = (StatisticData*)b;
    
    if (itemA->count == itemB->count) result = itemA->value - itemB->value;
    else
    {
        if (itemA->count > itemB->count) result = 1;
        else if (itemA->count < itemB->count) result = -1;
    }
    
    return result;
}
 
int main(void)
{
    int a[] = {1, 1, 1, 2, 3, 2, 5, 6, 6, 8, 8, 9, 9, 9, 9, 0};
    size_t N = sizeof(a) / sizeof(*a);
    
    StatisticData* data = calloc(N, sizeof(*data));
    size_t M = 0;
    
    for (size_t i = 0; i < N; i++)
    {
        bool found = false;
        
        size_t j = 0;
        
        while ((j < M) && !found)
        {
            if (data[j].value == a[i]) found = true;
            else j++;
        }
        
        if (found) data[j].count++;
        else
        {
            data[M].value = a[i];
            data[M].count = 1;
            M++;
        }
    }
    
    qsort(data, M, sizeof(*data), compare);
    
    for (size_t i = 0; i < M; i++)
        printf("Item %04zu : value = %d, count = %zu\n", i, data[i].value, data[i].count);        
    
    free(data);
    
    return 0;
}
0
programminf
0 / 0 / 0
Регистрация: 03.01.2017
Сообщений: 8
19.01.2017, 20:51  [ТС] #4
а как записать чтобы массив вводился с клавиатуры ?

Добавлено через 48 секунд
LFC,
а как записать чтобы массив вводился с клавиатуры ?
0
19.01.2017, 20:51
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.01.2017, 20:51
Привет! Вот еще темы с ответами:

Вывести все делители целого числа в порядке возрастания - C (СИ)
На вход программе подается целое число. Необходимо вывести все делители этого числа в порядке возрастания (включая отрицательные). Если...

Выведите элементы массива, полученного слиянием A и B, в порядке возрастания - C (СИ)
Слияние массивов Даны два упорядоченных массива A, B. Требуется слить их в один упорядоченный массив. ...

Найти индексы одинаковых элементов массива и вывести их в порядке возрастания - C (СИ)
Дано целочисленный массив размера N, содержащий ровно два одинаковых элемента. Найти номера одинаковых элементов и вывести эти номера в...

Цикл: Вывести все числа, расположенные между заданными числами, в порядке их возрастания - C (СИ)
Даны два целых числа А и В (А&lt;B). Вывести все целые числа, расположенные между данными числами (включая сами эти числа), в порядке их...


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

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

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