Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Nmzph
0 / 0 / 0
Регистрация: 20.02.2011
Сообщений: 2
#1

Массив структурок - C (СИ)

24.02.2011, 01:16. Просмотров 386. Ответов 3
Метки нет (Все метки)


http://www.cyberforum.ru/c-beginners/thread1272484.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.02.2011, 01:16
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Массив структурок (C (СИ)):

Сформировать массив C, который будет состоять из чисел, которые одновременно входят как в массив A, так и в массив B
Есть задание :На основе исходных массивов A и B (n и m – рабочие размеры...

Построить массив d из элементов, которые входят как в массив a так и в массив b
Дан массив a и b состоящий из n элементов. Построить массив d из элементов,...

Дан массив размерности n. Заполнить массив случайными числами в диапазоне [-100;100]. Перевернуть массив:
Дан массив размерности n. Заполнить массив случайными числами в диапазоне ....

Вывести на печать массив X, массив Z, массив Y, произведение элементов массива X, упорядоченный массив Y
Вывести на печать массив X, массив Z, массив Y, произведение элементов массива...

Дан массив целых чисел а(12). Переписать в массив х четные, а в массив у нечетные элементы массива а
Помогите пожалуйста решить эту задачу. Массив a выводит на печать. Я пишу a mod...

3
accept
4833 / 3254 / 454
Регистрация: 10.12.2008
Сообщений: 10,569
24.02.2011, 11:12 #2
C
1
scanf("%d", &numbrs);
после этой строки нужно выделить массив структур sost
потом уже цикл заполняет их

sizeof(char) всегда равно еденице
поэтому
C
1
berry[i].perry[k].fam=(char*)malloc(12*sizeof(char));
можно заменить на
C
1
berry[i].perry[k].fam = (char *) malloc(12);
учитывая нуль-символ, получается, что туда можно сохранить не более 11 символов

важно очищать также память в конце
1
Nmzph
0 / 0 / 0
Регистрация: 20.02.2011
Сообщений: 2
26.02.2011, 19:53 #3
тогда я так выделю после
C
1
 scanf("%d",&numbrs);
C
1
if ((berry[i].perry=(sost*)malloc(numbrs*sizeof(sost)))==NULL) puts ("errors");
Еще интересует как правильно выделить память для *berry
Так
C
1
berry=(dead*)malloc(size*sizeof(dead));
или
0
accept
4833 / 3254 / 454
Регистрация: 10.12.2008
Сообщений: 10,569
27.02.2011, 06:32 #4
Цитата Сообщение от Nmzph
Еще интересует как правильно выделить память для *berry
да правильно там

C
1
2
3
typedef struct sost{
        char *fam;
}
ошибка

по логике
C
1
2
3
typedef struct sost{
        char *fam;
} sost;
лучше называть новое имя типа как-нибудь отлично от имён переменных, типа Sost, sost_t или Sost_t
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.02.2011, 06:32
Привет! Вот еще темы с решениями:

Дан одномерный массив A из N элементов. Переписать положительные элементы массива в массив B, а отрицательные в массив C
Дан одномерный массив A из N элементов. Переписать положительные элементы...

Массив: Получить новый массив P, состоящую из чисел в интервале (a,b), которые не входят в массив H...
Помогите с заданием, пожалуйста :Написать программу, которая формирует новую...

Массив: Отсортировать полученный массив 3 способами: по строкам, по столбцам( возр.), 3) и весь массив
Помогите, пожалуйста ,решить задачу. Очень нужно. Задан массив (4*6)....

Массив: Как сделать так, чтобы результирующий массив представлял собой измененный по заданным правилам первый массив?
Доброй ночи форумчане, очередной нубо-вопрос не требует отлагательств имеется...


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

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

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