Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
0 / 0 / 0
Регистрация: 21.09.2018
Сообщений: 9
1

Дан массив D(12). Сформировать новый массив из положительных кратных 3 чисел исходного

21.09.2018, 17:12. Показов 1913. Ответов 4

D(12) для более лёгкой проверки я сделал massiv[3].
Я не знаю почему первым в massiv1[k] идёт 0 и не всегда корректно отображаются числа

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
 
int main(void)
{
    int i, j, k=0, massiv[3], massiv1[k];
    for(i=0;i<3;i++) {
        printf("Введите элемент массива %d/3\n", i);
        scanf("%d", &massiv[i]);
    }
    for(i=0;i<3;i++) { 
        if((massiv[i]>0)&&(massiv[i]%3==0)) {
            massiv1[j]=massiv[i];
            j++;
            k++;
        }
    }
    printf("\nk=%d\n", k);
    for(i=0;i<k;i++) {
        printf("%d ", massiv1[i]);
    }
    return 0;
}
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.09.2018, 17:12
Ответы с готовыми решениями:

Дан массив X(25). Сформировать новый массив из чисел исходного, лежащих в интервале [-3,7]
Доброго времени суток... Написание данной программы на языке (С) вызвало у меня некое...

Дан массив B(21) Сформировать новый массив из кратных 4 чисел исходного
Дан массив B(21) Сформировать новый массив из кратных 4 чисел исходного. Мальчики, помогите...

Дан массив X(10). Сформировать новый массив из четных чисел исходного
Помогите, кому не сложно, спасибо заранее :)

Сформировать новый массив из отрицательных или из положительных чисел исходного массива
по указанию пользователя с элементов масива а(15) сформировать масив или из отрицательных или из...

4
Модератор
Эксперт по электронике
8411 / 6251 / 842
Регистрация: 14.02.2011
Сообщений: 21,688
21.09.2018, 17:28 2
Цитата Сообщение от Drygc Посмотреть сообщение
int i, j, k=0, massiv[3], massiv1[k];
какого размера будет массив massiv1???
0
0 / 0 / 0
Регистрация: 21.09.2018
Сообщений: 9
21.09.2018, 17:44  [ТС] 3
Каждый раз, когда условие подходит massiv1[k] становится на 1 больше, так и получается размер

C
1
2
3
4
5
6
7
for(i=0;i<3;i++) { 
        if((massiv[i]>0)&&(massiv[i]%3==0)) {
            massiv1[j]=massiv[i];
            j++;
            k++;    //<-- вот
        }
    }
0
Модератор
Эксперт по электронике
8411 / 6251 / 842
Регистрация: 14.02.2011
Сообщений: 21,688
21.09.2018, 19:25 4
Цитата Сообщение от Drygc Посмотреть сообщение
Каждый раз, когда условие подходит massiv1[k] становится на 1 больше,
не становится
массив объявляется один раз в первой строчке, c объявленным размером, кой равен 0
поведение которое ты описал присуще динамическим массивам, которые объявляются( на самом деле не объявляются а выделяется память) malloc а изменение размера realloc
1
0 / 0 / 0
Регистрация: 21.09.2018
Сообщений: 9
21.09.2018, 21:07  [ТС] 5
Спасибо, посмотрел возможности этой функции, к этому заданию не смог применить, но сделал его иначе, вот что получилось:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>
 
int main() {
    int i, D[12];
    for(i=0;i<12;i++) {
     printf("Введите элемент массива %d/12: ", i);
     scanf("%d", &D[i]);
    }
    printf("\n");
    printf("Старый массив:");
    for(i=0;i<12;i++)
     printf(" %d", D[i]);
     printf("\n");
    printf("Новый массив:");
    for(i=0;i<12;i++) {
     if((D[i]>0)&&(D[i]%3==0)) 
     printf(" %d", D[i]);
    }
    return 0;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.09.2018, 21:07

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Дан массив X(N). Сформировать новый массив, выбросив из исходного все элементы с наименьшим значением.
Помогите, пожалуйста, решить. И если можно, то поподробнее, а то что-то мало понимаю массивы...(

Дан массив. Получить другой массив, состоящий только из чисел исходного массива, кратных 3
1) дан массив С(N). Получить другой массив, состоящий только из чисел исходного массива кратных 3,...

Дан массив А.Сформировать одномерный массив В из положительных элементов массива А, кратных 5, записанных в порядке их следования в массиве А
не удается вывести второй массив на экран, в чем я ошибся? using System; using...

Дан массив «A». Сформировать новый массив из положительных значений элемента массива и найти в новом массиве минимальное
Дан массив «A». Сформировать новый массив из положительных значений элемента массива и найти в...

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

Из положительных элементов исходного массива сформировать новый массив
Составить на языке Паскаль программу, управляющуюся с помощью меню. 1)Из положительных...


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

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

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