|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
08.04.2010, 21:34 | #1 |
Пользователь
Регистрация: 04.01.2009
Сообщений: 30
|
Работа с одномерным массивом
Задача:
Даны 2 одномерных массива(целые числа)A и B,нужно вычислить массив C,содержащий эл-ты массива A присутствующие в B. Язык Си начал изучать совсем не давно,вот что получилось Код:
|
08.04.2010, 21:45 | #2 |
Студент 1 курса
Форумчанин Подтвердите свой е-майл
Регистрация: 27.06.2008
Сообщений: 959
|
Код:
C++(STL, QT, WinInet) / DHTML(CSS) / JavaScript / PHP Developer
|
08.04.2010, 21:45 | #3 |
Пользователь
Регистрация: 05.04.2010
Сообщений: 56
|
Все делается намного проще, вам нужно создать цикл для первого массива а[i] и для второго массива b[j] во втором цикле сделать проверку:
if(a[i]==b[j]) c[i]=a[i]; и всё.
сout<<"Изучаю программирование" точка с запятой
|
08.04.2010, 21:48 | #4 |
Пользователь
Регистрация: 05.04.2010
Сообщений: 56
|
for(i=0;i<na;i++)
{ for(j=0;j<nb;j++) { if(a[i]==b[j]) c[i]=a[i]; else continue; } }
сout<<"Изучаю программирование" точка с запятой
|
08.04.2010, 22:08 | #5 |
Форумчанин
Регистрация: 15.01.2010
Сообщений: 948
|
|
08.04.2010, 22:13 | #6 | |
Пользователь
Регистрация: 04.01.2009
Сообщений: 30
|
Цитата:
Код:
Только не могу расставить операторные скобки правильно |
|
08.04.2010, 22:20 | #7 |
Студент 1 курса
Форумчанин Подтвердите свой е-майл
Регистрация: 27.06.2008
Сообщений: 959
|
Roll1n, Чем тебе мой вариант не нравится??
C++(STL, QT, WinInet) / DHTML(CSS) / JavaScript / PHP Developer
|
08.04.2010, 23:59 | #8 | |
Пользователь
Регистрация: 05.04.2010
Сообщений: 56
|
Цитата:
for(int j=0, k=0;j<nb, j++) { if(a[i]==b[j]) { c[k]=a[i]; k++ } } для вывода элементов c[] нужна ещё одна переменная которая и будет считать сколько выводить чисел, её можно всунуть в туже проверку массива а и б. z++ например и уже дальше выводить её for(i=0; i<kolvo;i++) cout<<c[z];
сout<<"Изучаю программирование" точка с запятой
Последний раз редактировалось Crudelis; 09.04.2010 в 00:03. |
|
09.04.2010, 00:22 | #9 | |
Форумчанин
Регистрация: 15.01.2010
Сообщений: 948
|
Цитата:
Код:
Код:
|
|
09.04.2010, 00:50 | #10 |
Пользователь
Регистрация: 05.04.2010
Сообщений: 56
|
void main()
{ int a[3] = {1, 2, 3}; int b[2] = {1, 2}; int c[5]; int i, j, k=0; for ( i=0; i<3; i++ ) { for ( j=0; j<2; j++) { if ( a[i] == b[j] ) { c[k]=a[i]; k++; } } } if ( k == 0) cout << "c[] is empty" << endl; else { for ( i = 0; i < k; i++) cout << c[i] << " "; cout << endl; } } У меня выводит 1 2
сout<<"Изучаю программирование" точка с запятой
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
работа с одномерным массивом и сортирокой | Nitriyc | Помощь студентам | 0 | 22.11.2009 14:24 |
работа с одномерным массивом | _Solomon_ | Помощь студентам | 1 | 07.06.2007 12:06 |