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

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

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

Подправьте код, что то не компилируется, не пойму в чем дело, на .cpp норм, а .с выдает ошибки int max(int a, int b);синтаксическая ошибка: тип Bubble(data,SIZE, min);min: необъявленный идентификатор
Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <math.h>
  4. #define SIZE 10
  5.  
  6. int max(int a, int b);
  7. int min(int a, int b);
  8. void Bubble(int* d, int n, int (*comp)(int,int));
  9.  
  10. void Bubble(int* d, int n, int (*comp)(int,int)){
  11. int i,j;
  12. int buf;
  13. for(i=1;i<n;i++)
  14. for(j=0;j<n-i;j++)
  15. if(comp(d[j],d[j+1])){
  16. buf=d[j];d[j]=d[j+1]; d[j+1]=buf;
  17. }
  18. }
  19.  
  20. int max(int a, int b){
  21. return a<b;
  22. }
  23.  
  24. int min(int a, int b){
  25. return !max(a,b);
  26. }
  27. void main(){
  28. int i;
  29. int data[SIZE]={12,5,-6,25,3,0,7,34,-8,-88};
  30. Bubble(data,SIZE, min);
  31. for(i=0;i<SIZE;i++) printf("%d ", data[i]);
  32. printf("\n");
  33. system("pause");
  34. }

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

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. #define SIZE    10
  5.  
  6.  
  7. int max_compare(const void* a, const void* b);
  8. int min_compare(const void* a, const void* b);
  9. void Bubble(int* d, int n, int (*comp)(const void* a, const void* b));
  10.  
  11.  
  12.  
  13.  
  14. void main(){
  15.     int i;
  16.     int data[SIZE]={12,5,-6,25,3,0,7,34,-8,-88};
  17.  
  18.     Bubble(data,SIZE, min_compare);
  19.     for(i=0;i<SIZE;i++) printf("%d  ", data[i]);
  20.     printf("\n");
  21.  
  22.     system("pause");
  23. }
  24.  
  25. void Bubble(int* d, int n, int (*comp)(const void* a, const void* b)){
  26.     int i,j;
  27.     int buf;
  28.     for(i=1;i<n;i++)
  29.         for(j=0;j<n-i;j++)
  30.             if(comp(&d[j],&d[j+1])){
  31.                 buf=d[j];d[j]=d[j+1]; d[j+1]=buf;
  32.             }
  33. }
  34.  
  35.  
  36. int max_compare(const void* a, const void* b){
  37.     int aa = *(const int* )a;
  38.     int bb = *(const int* )b;
  39.     return aa<bb;
  40. }
  41.  
  42.  
  43. int min_compare(const void* a, const void* b){
  44.     return !max_compare(a,b);
  45. }

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


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

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

7   голосов , оценка 3.714 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы