Ошибка "Необъявленный идентификатор" препятствует успешной компиляции - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Подправьте код, что то не компилируется, не пойму в чем дело, на .cpp норм, а .с выдает ошибки int max(int a, int b);синтаксическая ошибка: тип Bubble(data,SIZE, min);min: необъявленный идентификатор
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#define SIZE    10

int max(int a, int b);
int min(int a, int b);
void Bubble(int* d, int n, int (*comp)(int,int));

void Bubble(int* d, int n, int (*comp)(int,int)){
    int i,j;
    int buf;
    for(i=1;i<n;i++)
        for(j=0;j<n-i;j++)
            if(comp(d[j],d[j+1])){
                buf=d[j];d[j]=d[j+1]; d[j+1]=buf;
            }
}

int max(int a, int b){
    return a<b;
}

int min(int a, int b){
    return !max(a,b);
}
 
void main(){
    int i;
    int data[SIZE]={12,5,-6,25,3,0,7,34,-8,-88};
 
    Bubble(data,SIZE, min);
    for(i=0;i<SIZE;i++) printf("%d  ", data[i]);
    printf("\n");
 
    system("pause");
}

Решение задачи: «Ошибка "Необъявленный идентификатор" препятствует успешной компиляции»

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
 
#define SIZE    10
 
 
int max_compare(const void* a, const void* b);
int min_compare(const void* a, const void* b);
void Bubble(int* d, int n, int (*comp)(const void* a, const void* b));
 
 
 
 
void main(){
    int i;
    int data[SIZE]={12,5,-6,25,3,0,7,34,-8,-88};
 
    Bubble(data,SIZE, min_compare);
    for(i=0;i<SIZE;i++) printf("%d  ", data[i]);
    printf("\n");
 
    system("pause");
}
 
void Bubble(int* d, int n, int (*comp)(const void* a, const void* b)){
    int i,j;
    int buf;
    for(i=1;i<n;i++)
        for(j=0;j<n-i;j++)
            if(comp(&d[j],&d[j+1])){
                buf=d[j];d[j]=d[j+1]; d[j+1]=buf;
            }
}
 
 
int max_compare(const void* a, const void* b){
    int aa = *(const int* )a;
    int bb = *(const int* )b;
    return aa<bb;
}
 
 
int min_compare(const void* a, const void* b){
    return !max_compare(a,b);
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.714 из 5
Похожие ответы