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

Удалить из массивов элементы, указанные пользователем

06.01.2014, 23:49. Показов 1064. Ответов 2
Метки нет (Все метки)

Доброй ночи.
Помогите с программой, заранее спасибо.
Удалить из массивов М(10) и С(12) элементы, указанные пользователем (по 1 из массива).
Как это сделать через функции?
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.01.2014, 23:49
Ответы с готовыми решениями:

Удалить элементы списка, следующие за элементом, определенным пользователем
Добрый Вечер! Прошу помощи по описанной ниже задачи. Требуется дописать функцию,которая удаляет...

Удалить из массива все элементы, меньшие заданного пользователем числа
С клавиатуры пользователь задает размер массива (натуральное число) и элементы массива (целые или...

Удалить из массива все элементы, меньшие заданного пользователем числа
С клавиатуры пользователь задает размер массива (натуральное число) и элементы массива (целые или...

Удалить cookie, указанные пользователем
ЗАДАЧА: Создать страницу, которая выводит все имеющиеся cookie в виде таблицы (имя, значение). Для...

2
6255 / 3556 / 898
Регистрация: 28.10.2010
Сообщений: 5,926
07.01.2014, 00:05 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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#ifdef _MSC_VER
    #define _CRT_SECURE_NO_WARNINGS
#endif
 
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
 
#define SIZE_M 10
#define SIZE_C 12
 
int* create_int_array(size_t size)
{
    return (int*)malloc(sizeof(int) * size);
}
 
void delete_int_array_index(int* ptr, const 
                            size_t old_size, 
                            const size_t index)
{
    memmove(ptr + index, ptr + index + 1, 
        (old_size - index) * sizeof(int));
    realloc(ptr, old_size * sizeof(int) - sizeof(int));
}
 
void print(const int* p, size_t size)
{
    while (size--)
        printf("%d ", *p++);
    putchar('\n');
}
 
void fill(int* ptr, size_t size)
{
    while (size--)
        *ptr++ = rand() % 20;
}
 
int main(void)
{
    size_t index = 0;
    int *m, *c;
    srand(time(0));
    m = create_int_array(SIZE_M);
    c = create_int_array(SIZE_C);
    fill(m, SIZE_M);
    fill(c, SIZE_C);
    print(m, SIZE_M);
    print(c, SIZE_C);
    printf(">");
    if (scanf("%u", &index) == 1 && index < SIZE_M)
    {
        delete_int_array_index(m, SIZE_M, index);
        print(m, SIZE_M - 1);   
        free(m);
    }
    else
    {
        puts("Invalid array index");
    }
 
    printf(">");
    if (scanf("%u", &index) == 1 && index < SIZE_C)
    {
        delete_int_array_index(c, SIZE_C, index);
        print(c, SIZE_C - 1);
        free(c);
    }
    else
    {
        puts("Invalid array index");
    }
    return EXIT_SUCCESS;
}
1
1 / 1 / 0
Регистрация: 27.10.2013
Сообщений: 37
07.01.2014, 02:30  [ТС] 3
Петр, огромное вам спасибо. Вы меня сильно выручаете.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.01.2014, 02:30
Помогаю со студенческими работами здесь

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

Удалить минимальные элементы из массивов
помогите пожалуйста написать программу на pascal Даны два массива чисел. Найти в них минимальные...

Поменять местами указанные пользователем столбцы матрицы
Дана матрица 4х3, написать программу, которая поменяет местами те столбцы, что укажет пользователь....

Как удалить повторяющиеся элементы двух массивов?
Имеется три массива $m_1, $m_2 и $m_3. Первый массив содержит буквенно-цифровые элементы,...


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

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

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