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

Как получить индекс элемента массива с bsearch?

03.02.2015, 19:48. Просмотров 525. Ответов 0
Метки нет (Все метки)

Имеется такой код
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
#include <stdio.h>
#include <stdlib.h>
 
int cmp (const int *i, const int *j) {
    return *i - *j;
}
 
int numeric(int *p1, int *p2)
{
    return(*p1 - *p2);
}
 
int main(int argc, const char * argv[]) {
    
    int a[] = {3, 2, 1, 0, -100, -32, 31, -31};
    for (int i = 0; i < sizeof(a) / sizeof(int); i++) {
        printf("%d ", a[i]);
    }
    qsort(a, sizeof(a) / sizeof(int), sizeof(int), cmp);
    puts("");
    for (int i = 0; i < sizeof(a) / sizeof(int); i++) {
        printf("%d ", a[i]);
    }
    
    int *p;
    int c = 0;
    p =(char *) bsearch(&c, a, sizeof(a) / sizeof(int), sizeof(int), numeric);
 
    if (bsearch(&c, a, sizeof(a) / sizeof(int), sizeof(int), numeric)) {
        puts("YES");
    } else {
        puts("NO");
    }
    return 0;
}
Массив после сортировки такой -100 -32 -31 0 1 2 3 31
Затем мне нужно найти какой индекс у элемента со значением 0 в данном массиве
Но проблема в том, что я только получаю указатель и по нему могу только определить входит этот элемент в массив или нет! А мне нужно индекс элемента
Подскажите пожалуйста как это сделать!

Добавлено через 42 минуты
Разобрался сам надо было из указателя на первый элемент массива вычесть указатель из bsearch!!!
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.02.2015, 19:48
Ответы с готовыми решениями:

Как найти индекс минимального элемента массива с помощью указателя?
Подскажите, пожалуйста, как можно найти индекс минимального элемента массива с...

Пустить на вывод индекс элемента массива
допустим есть массив А(1, 2, 3) как мне вывести на экран индекс элемента 3?

Найти индекс максимального элемента массива
Не находит правильно индекс максимального элемента, в чём ошибка?...

Найти индекс центрального элемента массива
Дан массив a, в нем найден центральный элемент х, как найти его индекс в...

Вычислить индекс максимального по модулю элемента массива
Uslovie: В одномерном динамическом массиве, состоящем из n вещественных...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.02.2015, 19:48

Найти индекс первого нулевого элемента массива
Разработать программу с использованием функции пользователя вычисления заданной...

Найти индекс максимального по модулю элемента массива
Помогите пожалуйста, в Си вообще не разбираюсь В одномерном массиве, состоящем...

Узнать индекс максимального элемента второй половины массива
Нам нужно узнать номер максимального элемента второй половины массива t с 20...


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

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

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