Компилятор выдаёт ошибки

Ошибки:

error:stray '\300' in program

error:expected expression before ',' token

Номер строки, на которую указывают ошибки - 71

Суть программы в том, что она меняет местами минимальные значения в массивах или выводит сообщение о некорректном вводе, если в одном из массивов есть несколько одинаковых минимальных элементов.

Ввод:
2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 1 2
4 4 4 4 4
4 4 4 4 4
4 4 4 4 4
4 4 4 4 4
4 4 4 4 4
4 4 4 4 4
4 3 4 4 4

Вывод:
2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 3 2
4 4 4 4 4
4 4 4 4 4
4 4 4 4 4
4 4 4 4 4
4 4 4 4 4
4 4 4 4 4
4 1 4 4 4
#include <stdio.h>
#include <stdlib.h>

void scaner(int **X, int N, int M)
{
   for (int i = 0; i < N; i++)
   {
     X[i] = (int*)malloc(M * sizeof(int));
     for (int l = 0; l < M; l++)
       scanf("%d", &X[i][l]);
   }
}


int minimum_finder(int **X, int N, int M)
{
   int p = 2147483647;
   for (int i = 0; i < N; i++)
       for (int j = 0; j < M; j++)
           if (X[N][M] < p)
               p = X[N][M];
   return p;
}

int fooldetector(int **X, int N, int M)
{
   int min = 2147483647;
   for (int i = 0; i < N; i++)
       for (int j = 0; j < M; j++)
           if (X[N][M] < min)
           min = X[N][M];
   return min;
}

void printer(int **X, int N, int M, char c)
{
   printf("Array %c\n", c);
   for (int i = 0; i < N; i++)
       for (int j = 0; j < M; j++)
           printf("%d ", X[N][M]);
}

int main()
{
   int **A, **B;


   printf("Enter elements of the array A[57][1]\n");
   A = (int**)malloc(57 * sizeof(int *));
   scaner(A, 57, 1);
   printf("\n");

   printf("Enter elements of the array B[7][5]\n");
   B = (int**)malloc(7 * sizeof(int *));
   scaner(B, 7, 5);
   printf("\n");

   int at = fooldetector(A, 57, 1);
   int bt = fooldetector(B, 5, 7);
   if ((at != 0) || (bt != 0))
       printf("Isn't correct: at = %d, bt = %d", at, bt);
   else
   {
   int mA = minimum_finder(A, 57, 1);
   int mB = minimum_finder(B, 5, 7);

   int mC = mA;
   mA = mB;
   mB = mC;

   printer(А, 57, 1, "F");
   printer(B, 7, 5, "R");
   }
   return 0;
}

upd: заменил A и B на F и R в printer(). Выдаёт те же ошибки.


Ответы (2 шт):

Автор решения: Sergey

В конце программы, в операторе:

printer(А, 57, 1, 'A');

символ 'А' у Вас набит как КИРИЛИЧЕСКАЯ буква 'A'. Вбейте латиницей и программа скомпилируется.

→ Ссылка
Автор решения: AlexGlebe
  1. В программе переменная А пробита русской буквой. Поменяйте на латиницу.

    printer(   A   , 57, 1, 'A');
               ^
    
  2. Вы печатаете адрес переменных, а надо сами числа.

    printf("Isn't correct: at = %d, bt = %d", &at, &bt);
    

вот так :

printf("Isn't correct: at = %d, bt = %d", at, bt);
→ Ссылка