求教(不用喷水,新手)

求教(不要喷水,新手)下面代码能运行,但是有错,请帮我指点出来,不胜感激main(){int a,M,H,Lprintf(请输入

求教(不要喷水,新手)
下面代码能运行,但是有错,请帮我指点出来,不胜感激
main()
{
  int a,M,H,L;
  printf("请输入成绩:");
  scanf("%d",a);
  while(a<0||a>100)
  {
  printf("成绩输入错误,请重新输入!!!\n");
  scanf("%d",a);
  }
  if(a>=85)
  a=M;
  else
  if(a>=60)
  a=H;
  else
  if(a<60)
  a=L;
  switch(a)
  {
  case 'M' : printf("成绩优秀\n");break;
  case 'H' : printf("成绩良好\n");break;
  case 'L' : printf("成绩不及格\n");break;
  }
  system("pause");
  return 0;
}

[解决办法]
乍一看,scanf用地有问题