Language: C

#include<stdio.h>
static const int N=36;
typedef struct{
  char mark;
  int atai;
}CARD;
void BubbleSort(CARD *,int);
void Selectionsort(CARD *,int);

void Swap(card *a,card *y){
  card temp;
  temp=*a;
  *a=*b;
  *b=temp;
}
int main(){
  CARD c[N];
  int i,n,judge1,judge2;
  scanf("%d",&n);
  for(i=0;i<n;i++)scanf("%c%d",c[i].mark,c[i].atai);
  BubbleSort(&c, n);
  Selectionsort(&c,n);
  judge1=isStable(c,)

  return 0;
}

void BubbleSort(CARD c,int n){
  int i,j;
  CARD key;
  for(i=0;i<n;i++)
    {
      for(j=n-1;j>i+1;j--)
	{
	  if(c[j].atai<c[j-1].atai)
	    {
	      key=c[j];
	      c[j]=c[j-1];
	      c[j-1]=key;
	    }
	}
    }
  for(i=0;i<n-1;i++)printf("%c%d ",c[i].mark,c[i].atai);
  printf("%c%d\n",c[i].mark,c[i].atai);
  isStable(char *in,char *out);
  //stable????????????
}
void Selectionsort(CARD c,int n){
  int i,j,miji;
  CARD key;
  for(i=0;i<n;i++)
    {
      miji=i;
      for(j=i;j>n-1;j--)
	{
	  if(c[j].atai<c[miji].atai)minj=j;
	} 
      key=c[i];
      c[i]=c[miji];
      c[miji]=key;
    }
  for(i=0;i<n-1;i++)printf("%c%d ",c[i].mark,c[i].atai);
  printf("%c%d\n",c[i].mark,c[i].atai);
  isStable(in,out);
   //stable????????????
}
void isStable(char *in,char *out, int n){
  int i,j,a,b;
  for(i=0;i<n;i++)
    {
      for(j=i+1;j<n;j++)
	{
	  for(a=0;a<n;a++)
	    {
	      for(b=a+1;b<n;b++)
		{
		  if(in[i].atai==in[j].atai&&in[i]==out[b]&&in[j]==out[a])return -1;
		}
	    }
	}
    }
  return 0;
}

Compiler output:
main.c:10:11: error: unknown type name 'card'
   10 | void Swap(card *a,card *y){
      |           ^~~~
main.c:10:19: error: unknown type name 'card'
   10 | void Swap(card *a,card *y){
      |                   ^~~~
main.c: In function 'main':
main.c:21:14: error: passing argument 1 of 'BubbleSort' from incompatible pointer type [-Wincompatible-pointer-types]
   21 |   BubbleSort(&c, n);
      |              ^~
      |              |
      |              CARD (*)[N]
main.c:7:17: note: expected 'CARD *' but argument is of type 'CARD (*)[N]'
    7 | void BubbleSort(CARD *,int);
      |                 ^~~~~~
main.c:22:17: error: passing argument 1 of 'Selectionsort' from incompatible pointer type [-Wincompatible-pointer-types]
   22 |   Selectionsort(&c,n);
      |                 ^~
      |                 |
      |                 CARD (*)[N]
main.c:8:20: note: expected 'CARD *' but argument is of type 'CARD (*)[N]'
    8 | void Selectionsort(CARD *,int);
      |                    ^~~~~~
main.c:23:10: error: implicit declaration of function 'isStable' [-Wimplicit-function-declaration]
   23 |   judge1=isStable(c,)
      |          ^~~~~~~~
main.c:23:21: error: expected expression before ')' token
   23 |   judge1=isStable(c,)
      |                     ^
main.c: At top level:
main.c:28:6: error: conflicting types for 'BubbleSort'; have 'void(CARD,  int)'
   28 | void BubbleSort(CARD c,int n){
      |      ^~~~~~~~~~
main.c:7:6: note: previous declaration of 'BubbleSort' with type 'void(CARD *, int)'
    7 | void BubbleSort(CARD *,int);
      |      ^~~~~~~~~~
main.c: In function 'BubbleSort':
main.c:35:15: error: subscripted value is neither array nor pointer nor vector
   35 |           if(c[j].atai<c[j-1].atai)
      |               ^
main.c:35:25: error: subscripted value is neither array nor pointer nor vector
   35 |           if(c[j].atai<c[j-1].atai)
      |                         ^
main.c:37:20: error: subscripted value is neither array nor pointer nor vector
   37 |               key=c[j];
      |                    ^
main.c:38:16: error: subscripted value is neither array nor pointer nor vector
   38 |               c[j]=c[j-1];
      |                ^
main.c:38:21: error: subscripted value is neither array nor pointer nor vector
   38 |               c[j]=c[j-1];
      |                     ^
main.c:39:16: error: subscripted value is neither array nor pointer nor vector
   39 |               c[j-1]=key;
      |                ^
main.c:43:37: error: subscripted value is neither array nor pointer nor vector
   43 |   for(i=0;i<n-1;i++)printf("%c%d ",c[i].mark,c[i].atai);
      |                                     ^
main.c:43:47: error: subscripted value is neither array nor pointer nor vector
   43 |   for(i=0;i<n-1;i++)printf("%c%d ",c[i].mark,c[i].atai);
      |                                               ^
main.c:44:20: error: subscripted value is neither array nor pointer nor vector
   44 |   printf("%c%d\n",c[i].mark,c[i].atai);
      |                    ^
main.c:44:30: error: subscripted value is neither array nor pointer nor vector
   44 |   printf("%c%d\n",c[i].mark,c[i].atai);
      |                              ^
main.c:45:12: error: expected expression before 'char'
   45 |   isStable(char *in,char *out);
      |            ^~~~
main.c: At top level:
main.c:48:6: error: conflicting types for 'Selectionsort'; have 'void(CARD,  int)'
   48 | void Selectionsort(CARD c,int n){
      |      ^~~~~~~~~~~~~
main.c:8:6: note: previous declaration of 'Selectionsort' with type 'void(CARD *, int)'
    8 | void Selectionsort(CARD *,int);
      |      ^~~~~~~~~~~~~
main.c: In function 'Selectionsort':
main.c:56:15: error: subscripted value is neither array nor pointer nor vector
   56 |           if(c[j].atai<c[miji].atai)minj=j;
      |               ^
main.c:56:25: error: subscripted value is neither array nor pointer nor vector
   56 |           if(c[j].atai<c[miji].atai)minj=j;
      |                         ^
main.c:56:37: error: 'minj' undeclared (first use in this function)
   56 |           if(c[j].atai<c[miji].atai)minj=j;
      |                                     ^~~~
main.c:56:37: note: each undeclared identifier is reported only once for each function it appears in
main.c:58:12: error: subscripted value is neither array nor pointer nor vector
   58 |       key=c[i];
      |            ^
main.c:59:8: error: subscripted value is neither array nor pointer nor vector
   59 |       c[i]=c[miji];
      |        ^
main.c:59:13: error: subscripted value is neither array nor pointer nor vector
   59 |       c[i]=c[miji];
      |             ^
main.c:60:8: error: subscripted value is neither array nor pointer nor vector
   60 |       c[miji]=key;
      |        ^
main.c:62:37: error: subscripted value is neither array nor pointer nor vector
   62 |   for(i=0;i<n-1;i++)printf("%c%d ",c[i].mark,c[i].atai);
      |                                     ^
main.c:62:47: error: subscripted value is neither array nor pointer nor vector
   62 |   for(i=0;i<n-1;i++)printf("%c%d ",c[i].mark,c[i].atai);
      |                                               ^
main.c:63:20: error: subscripted value is neither array nor pointer nor vector
   63 |   printf("%c%d\n",c[i].mark,c[i].atai);
      |                    ^
main.c:63:30: error: subscripted value is neither array nor pointer nor vector
   63 |   printf("%c%d\n",c[i].mark,c[i].atai);
      |                              ^
main.c:64:12: error: 'in' undeclared (first use in this function); did you mean 'i'?
   64 |   isStable(in,out);
      |            ^~
      |            i
main.c:64:15: error: 'out' undeclared (first use in this function)
   64 |   isStable(in,out);
      |               ^~~
main.c: At top level:
main.c:67:6: warning: conflicting types for 'isStable'; have 'void(char *, char *, int)'
   67 | void isStable(char *in,char *out, int n){
      |      ^~~~~~~~
main.c:23:10: note: previous implicit declaration of 'isStable' with type 'void(char *, char *, int)'
   23 |   judge1=isStable(c,)
      |          ^~~~~~~~
main.c: In function 'isStable':
main.c:77:27: error: request for member 'atai' in something not a structure or union
   77 |                   if(in[i].atai==in[j].atai&&in[i]==out[b]&&in[j]==out[a])return -1;
      |                           ^
main.c:77:39: error: request for member 'atai' in something not a structure or union
   77 |                   if(in[i].atai==in[j].atai&&in[i]==out[b]&&in[j]==out[a])return -1;
      |                                       ^
main.c:77:82: error: 'return' with a value, in function returning void [-Wreturn-mismatch]
   77 |                   if(in[i].atai==in[j].atai&&in[i]==out[b]&&in[j]==out[a])return -1;
      |                                                                                  ^
main.c:67:6: note: declared here
   67 | void isStable(char *in,char *out, int n){
      |      ^~~~~~~~
main.c:82:10: error: 'return' with a value, in function returning void [-Wreturn-mismatch]
   82 |   return 0;
      |          ^
main.c:67:6: note: declared here
   67 | void isStable(char *in,char *out, int n){
      |      ^~~~~~~~