#include<stdio.h>
void main()
{
  int a;
  scanf("%d",&a);
  if(a>0)
  printf("a=1\n");
  {
       if(a<0)
       printf("a=-1\n");
       }
  else
       printf("a=0\n");
  getch();
  }
#include<stdio.h>
void main()
{
  int a;
  scanf("%d",&a);
  if(a>0)
  printf("a=1\n");
  {                       /*花括号里的是复合语句*/
       if(a<0)         
       printf("a=-1\n");
  }
  else                   /*else总是和最近的if配对*/
       printf("a=0\n");
  getch();
  }
所以当a=2时,输出:a=1;
    当a=-1时,输出:a=0;
程序应改为:
#include<stdio.h>
void main()
{
  int a;
  scanf("%d",&a);
  if(a>0)
     printf("a=1\n");
  else if(a<0)         
         printf("a=-1\n");
       else 
         printf("a=0\n");
  getch();
  }
