My function is unable to compare 2 pointer values. The main function has two variables a and b. Swap function swaps the value of a and b. In my max function I cant find the bigger number between c and a. It is not working properly as a always become the bigger number.
//swap two varibales
int swap(int *a, int *b )
{
    int temp = *a;
    *a= *b;
    *b = temp;
        printf("After swap: A = %d and B = %d", *a, *b);
}
This function takes the input of c  and adds all three numbers.
int additon(int *a, int *b, int *c, int *total)
{
    printf(" \nInput Numbers you want: ");
    scanf("%d", c);
    *total = *a + *b  + *c;
    printf("\n\nTotal value of numbers %d, %d, %d  are = %d",*a,*b, *c, *total );
}
Function which compares between a and c [problem] :
int max(int *a, int *b, int *c,int *maxNum)
{
    if( a > c)
    {
        printf("\n\n A = %d is bigger than C = %d", *a,*c);
    }
    else if( a < c)
    {
        printf("\n\n A = %d is smaller than C = %d",*a,*c);
    }
}
Main function:
int main(int *total, int *maxNum)
{
    int *a = 10;
    int *b = 20;
    int *c;
    printf("Before swap: A = %d and B = %d\n", a,b);
    swap(&a, &b);
    additon(&a, &b, &c, &total);
    max(&a, &b, &c, &maxNum);
    return 0;
}
 
     
    