0 / 0 / 1
Регистрация: 22.05.2015
Сообщений: 12
1

Вставьте в массив число 11 перед максимальным и минимальным числами

05.06.2015, 01:20. Показов 1460. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Динамическая память. Одномерный массив. Вставьте в массив число 11 перед максимальным и
минимальным числами в массиве.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.06.2015, 01:20
Ответы с готовыми решениями:

Создайте одномерный массив. Вставьте первый отрицательный элемент перед максимальным элементом
Нужно создать массив и вставить первый отрицательный элемент перед максимальным элементом. Прошу...

Вставить произвольное число К перед максимальным и минимальным элементами массива
1. Вывести на экран наибольшую последовательность из повторяющихся элементов одномерного массива...

Перед каждым четным числом вставьте в массив число "0"
программа: дан массив целых чисел, перед каждым четным числом вставьте в массив число "0"

Вставить в массив элемент перед первым элементом с максимальным значением и после первого элемента минимальным значением
Кто разбирается в С#? Можете написать код Вставить в массив элемент с заданным значением перед...

2
419 / 418 / 167
Регистрация: 28.11.2010
Сообщений: 1,183
05.06.2015, 07:34 2
Если просто, то выделеяете память под новый массив+2 элемента, копируете в новый массив старый и в нужном месте вставляете 11. Затем удаляете исходный массив.
Если сложно, realloc мсходного массива на 2 элемента и сдвиг массива.
0
0 / 0 / 1
Регистрация: 22.05.2015
Сообщений: 12
05.06.2015, 12:19  [ТС] 3
Лучший ответ Сообщение было отмечено kok_kek21 как решение

Решение

Пробовал через realloc, но не получается сдвинуть элементы. В чем ошибка?
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
/* 
 * File:   main.c
 * Author: user
 *
 * Created on 4 Июнь 2015 г., 17:55
 */
 
#include <stdio.h>
#include <stdlib.h>
 
/*
 * 
 */
int main(int argc, char** argv) {
    int n,i,j;
    int min=10,max=0;
    printf("size: ");
    scanf("%d",&n);
    int *mas;
    srand(time(NULL));
    //int *asd = malloc(sizeof(int)*n);
    mas = malloc(sizeof(int)*n);
    for (i=0;i<n;i++){
        *(mas+i)=rand()%10+1;
    }
    for (i=0;i<n;i++){
        if (*(mas+i)>max)
            max=*(mas+i);
        if (*(mas+i)<min)
            min=*(mas+i);
        printf("%5d",*(mas+i));
    }
    printf("\nmin: %d\n",min);
    printf("max: %d\n",max);
    for (i=0;i<n;i++){
        if (*(mas+i)==min||*(mas+i)==max){
            int *ptr = realloc(mas,sizeof(int)*(++n));
            *mas=*ptr;
            for(j=i;j>n;j++)
                *(mas+j+1)=*(mas+j);//!!!
        }
    }
    for (i=0;i<n;i++){
        printf("%5d",*(mas+i));
    }
    printf("\nn: %d",n);
    return (EXIT_SUCCESS);
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.06.2015, 12:19
Помогаю со студенческими работами здесь

Цикл for между минимальным и максимальным числами
Завис на простой задаче. Дайте намёк пожалуйста. Напишите программу, в которой пользователем...

Найти разность между максимальным и минимальным числами
Помогите пожалуйста решить задачку на Паскале. Даны три действительных числа. Написать программу,...

Вычислить разность между максимальным и минимальным числами
2)Пусть дано 100 вещественных чисел, которые вводятся по одному. Вычислите разность между...

Вычислить разность между максимальным и минимальным числами
Привет, нужна помощь, помогите пожалуйста! Заранее СПАСИБО! ЛР 4 Циклические алгоритмы

Циклы. Определите разницу между максимальным и минимальным числами
Дано целое n&gt;0, за которым следует n действительных чисел. Определите разницу между максимальным и...

Вычислить разность между максимальным и минимальным числами в массиве
Заполнить массив из N ячеек случайными целыми числами от 0 до 24.Написать функцию вычисляющую...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru