求解答,C语言的解引用问题

#include <stdio.h>
#include <string.h>
int main()
{
char a[5][10];
char max[10];
int i;
char pa;
for (i=0;i<5;i++) {
scanf("%s",a[i]);
}
for (pa=a,strcpy(max,pa),i=0;i<5;i++) {
if(strcmp(max,(pa+10
i))<0){
strcpy(max,(pa+10
i));
}
}
printf("max=%s\n",max);
return 0;
}
第二个for 循环语句的地方为啥pa=a不是应该pa=a嘛?后面的pa以及pa+10i为啥不是*(pa),(pa+10i)

功能: 录入5个长度不超过10的字符串,然后输出倒序排列后的首个字符串

#include <stdio.h>
#include <string.h>
int main()
{
    char a[5][10];
    char max[10];
    int i;
    char *pa;
    for (i=0;i<5;i++) {
        scanf("%s",a[i]);
    }
    for (pa=*a,strcpy(max,pa),i=0;i<5;i++) {
        if(strcmp(max,(pa+10*i))<0){
            strcpy(max,(pa+10*i));
        }
    }
    printf("max=%s\n",max);
    
    return 0;
}