c语言基础问题,帮我解决下

这串代码错在哪儿了,帮我解答下,谢谢,我是初学者
用if语句输入三个数字,输出结果按从大到小的顺序排列
用if语句输入三个数字,输出结果按从大到小顺序排列图片说明

#include

int main()
{
int a,b,c,max,mid,min;
printf("输入a,b,c:");
scanf("%d%d%d",&a,&b,&c);
if (a >= b && a >= c){
max = a;
if(b > c){
mid=b;
min=c;
printf("%d %d %d",max,mid,min);
} else {
mid=c;
min=b;
printf("%d %d %d",max,mid,min);
}
} else if (b >= a && b >= c){
max = b;
if(a>c){
mid=a;
min=c;
printf("%d %d %d",max,mid,min);
} else {
mid=c;
min=a;
printf("%d %d %d",max,mid,min);
}
} else {
max = c;
if(b>a) {
mid=b;
min=a;
printf("%d %d %d",max,mid,min);
} else {
mid=a;
min=b;
printf("%d%d%d",max,mid,min);
}
}
return 0;
}
初学者把语法掌握牢固。

if max=a应该要用两个=才是判断是否相等
下面还有两个也是

下一行的printf语句没加 ;

-------------------Configuration: sf - Win32 Debug--------------------
Compiling...
sf.c
C:\Users\donglk\Desktop\sf.c(5) : error C2018: unknown character '0xa3'
C:\Users\donglk\Desktop\sf.c(5) : error C2018: unknown character '0xbb'
C:\Users\donglk\Desktop\sf.c(6) : error C2146: syntax error : missing ';' before identifier 'scanf'
C:\Users\donglk\Desktop\sf.c(7) : error C2061: syntax error : identifier 'max'
C:\Users\donglk\Desktop\sf.c(10) : error C2181: illegal else without matching if
C:\Users\donglk\Desktop\sf.c(10) : error C2146: syntax error : missing ';' before identifier 'mid'
C:\Users\donglk\Desktop\sf.c(12) : error C2181: illegal else without matching if
C:\Users\donglk\Desktop\sf.c(12) : error C2061: syntax error : identifier 'max'
C:\Users\donglk\Desktop\sf.c(15) : error C2181: illegal else without matching if
C:\Users\donglk\Desktop\sf.c(15) : error C2146: syntax error : missing ';' before identifier 'mid'
C:\Users\donglk\Desktop\sf.c(17) : error C2181: illegal else without matching if
C:\Users\donglk\Desktop\sf.c(18) : error C2143: syntax error : missing ';' before 'if'
C:\Users\donglk\Desktop\sf.c(20) : error C2181: illegal else without matching if
C:\Users\donglk\Desktop\sf.c(20) : error C2146: syntax error : missing ';' before identifier 'mid'
执行 cl.exe 时出错.

sf.obj - 1 error(s), 0 warning(s)

#include
main()
{
int a,b,c,max,mid,min;
printf("输入a,b,c");
scanf("%d%d%d",&a,&b,&c);
if max=a
if(b>c)mid=b,min=c;
printf("%d%d%d",max,mid,min);
else(c>b)mid=c,min=b;
printf("%d%d%d",max,mid,min);
else if max=b
if(a>c)mid=a,min=c;
printf("%d%d%d",max,mid,min);
else(c>b)mid=c,min=a;
printf("%d%d%d",max,mid,min);
else max=c
if(b>a)mid=b,min=a;
printf("%d%d%d",max,mid,min);
else(a>b)mid=a,min=b;
printf("%d%d%d",max,mid,min);
}

C语言不支持在if或者while条件判断语句中使用可选绑定,所以if max = a 这种语法根本就编译不通过,语法错误。