Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.11.2011, 13:05   #1
doctorvra4
Пользователь
 
Регистрация: 13.06.2011
Сообщений: 23
По умолчанию что делает void

как работает функция void,в чем её смысл если она ничего не возвращает?
doctorvra4 вне форума Ответить с цитированием
Старый 28.11.2011, 13:18   #2
Mandrivnyk
Software Developer
Участник клуба
 
Аватар для Mandrivnyk
 
Регистрация: 01.03.2011
Сообщений: 1,098
По умолчанию

Ну, например, работа с переменными посредством указателей.
Или, скажем, вывод на экран... или, если уж сильно пофантазировать, конечный цикл в качестве таймера (хотя, это уже чересчур)...

В общем, про указатели прочитай -)
Болтовня ничего не стоит. Покажите мне код. (c) Linus Torvalds
Помог ответ? -- Поставьте отзыв.
Выражения особой благодарности в рублевом эквиваленте отправлять сюда --> R269634919062
Mandrivnyk вне форума Ответить с цитированием
Старый 28.11.2011, 15:25   #3
doctorvra4
Пользователь
 
Регистрация: 13.06.2011
Сообщений: 23
По умолчанию

у меня есть функция void quicksort как её вызвать из главной функции?Точнее как в неё засунуть уже готовый массив,границы массива и вывести отсортированный массив обратно?
doctorvra4 вне форума Ответить с цитированием
Старый 28.11.2011, 15:49   #4
Mandrivnyk
Software Developer
Участник клуба
 
Аватар для Mandrivnyk
 
Регистрация: 01.03.2011
Сообщений: 1,098
По умолчанию

прототип функции покажи.
Болтовня ничего не стоит. Покажите мне код. (c) Linus Torvalds
Помог ответ? -- Поставьте отзыв.
Выражения особой благодарности в рублевом эквиваленте отправлять сюда --> R269634919062
Mandrivnyk вне форума Ответить с цитированием
Старый 28.11.2011, 15:56   #5
doctorvra4
Пользователь
 
Регистрация: 13.06.2011
Сообщений: 23
По умолчанию

Вот весь код,заранее предупреждаю что я нуб полный

#include<stdio.h>
void quicksort (int *a,int l,int r);
int main()
{
int x,N,i,l,r,j,w;
scanf("%d",&N);
int a[N];
for(i=1;i<N+1;i++)
scanf("%d",&a[i]);
l==a[1];
r==a[N];
quicksort (*a,l,r);
printf("d",a[i]);
}

void quicksort(int *a, int l, int r) {
int x, w; int i, j;
i = l;
j = r;
x = a[(l+r)/2];
do {
while (a[i] < x) i++;
while (x < a[j]) j--;
if(i <= j) {
w = a[i];
a[i] = a[j] ;
a[j] = w;
i++; j--;
}
} while (i<j);
if (l<j) quicksort (a,l,j);
if (i<r) quicksort (a,i,r);
}
doctorvra4 вне форума Ответить с цитированием
Старый 28.11.2011, 15:57   #6
doctorvra4
Пользователь
 
Регистрация: 13.06.2011
Сообщений: 23
По умолчанию

до этого собирал нечто подобное в одной большой функции все работало
doctorvra4 вне форума Ответить с цитированием
Старый 28.11.2011, 16:17   #7
Mandrivnyk
Software Developer
Участник клуба
 
Аватар для Mandrivnyk
 
Регистрация: 01.03.2011
Сообщений: 1,098
По умолчанию

Код:
l==a[1];
r==a[N];
Это не оператор присваивания, а оператор сравнения. Один знак "=" лишний.
Код:
quicksort (*a,l,r);
Вызывать функцию надо без "*" в этом случае.
Код:
printf("d",a[i]);
У тебя напечатается только один элемент массива a, а вернее, вообще выдаст ошибку, поскольку к этому месту индекс i выйдет за пределы массива.
Если хочешь напечатать весь массив -- печатай его в цикле.

И вообще -- почитай хоть какую-нибудь литературу. Это самые базовые понятия.
Болтовня ничего не стоит. Покажите мне код. (c) Linus Torvalds
Помог ответ? -- Поставьте отзыв.
Выражения особой благодарности в рублевом эквиваленте отправлять сюда --> R269634919062
Mandrivnyk вне форума Ответить с цитированием
Старый 28.11.2011, 16:22   #8
doctorvra4
Пользователь
 
Регистрация: 13.06.2011
Сообщений: 23
По умолчанию

скажи тока как перенести массив a[] в функцию и вынести обратно
doctorvra4 вне форума Ответить с цитированием
Старый 28.11.2011, 16:35   #9
Mandrivnyk
Software Developer
Участник клуба
 
Аватар для Mandrivnyk
 
Регистрация: 01.03.2011
Сообщений: 1,098
По умолчанию

пффф...
вопрос из категории "папа, а с кем ты сейчас разговаривал?.." и "-- до меня не доходят сообщения на пейджере! -- ну так прочтите их еще раз".

Я могу попытаться объяснить, как именно работают указатели, но во-первых, в книгах это написано более развернуто и с примерами, а во-вторых, не факт, что ты меня поймешь.
А подрабатывать бесплатным репетитором, извини, в понедельник совсем нет настроения.
Открываешь тему с литературой по С/С++, выбираешь книгу, качаешь и вникаешь.

ЗЫ можешь еще погуглить. "передача массива в функцию C++", например.
Болтовня ничего не стоит. Покажите мне код. (c) Linus Torvalds
Помог ответ? -- Поставьте отзыв.
Выражения особой благодарности в рублевом эквиваленте отправлять сюда --> R269634919062

Последний раз редактировалось Mandrivnyk; 28.11.2011 в 16:38.
Mandrivnyk вне форума Ответить с цитированием
Старый 28.11.2011, 18:32   #10
doctorvra4
Пользователь
 
Регистрация: 13.06.2011
Сообщений: 23
По умолчанию

Спасибо *ушел гуглить*
doctorvra4 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Что делает оператор. mojohead Помощь студентам 3 12.01.2011 04:04
скрипт, что он делает Sparky JavaScript, Ajax 2 20.06.2010 19:34
Печать. Что делает MS и не делает Delphi Влад12 Общие вопросы Delphi 8 05.05.2010 20:04
Что делает код AllForCS PHP 1 24.02.2010 00:50
Что писать в builder вместо void mainprog()? fs444 C++ Builder 3 18.09.2009 12:22