leo-liu 发表于 2020-7-31 23:31:58

c语音if语句问题,求助,谢谢大神

#include<stdio.h>
int main(void)
{
    char israin,isfree;
   
    printf("are you free?\n");
    scanf("%c",&isfree);
   
    getchar();
   
    if(isfree=='y'||isfree=='Y')
    {printf("will it rain tomrrow?\n");
      scanf("%c",&israin);}
   
      { if(israin=='y')
         printf("umbrella\n");}
   
    else
    { printf("sjis\n");}
   
   
      
   


   

   
   
    return 0;
}



为什么不能这样写,提示说else有问题:Expected expression


为什么要这么写:
#include<stdio.h>
int main(void)
{
    char israin,isfree;
   
    printf("are you free?\n");
    scanf("%c",&isfree);
   
    getchar();
   
    printf("will it rain tomrrow?\n");
    scanf("%c",&israin);
   
    if(isfree=='y'||isfree=='Y')
    {
      if(israin=='y'|| israin=='Y')
      printf("umbrella\n");
      }
   
    else
    printf("you are not free!!!\n");
         
    return 0;
}

永恒的蓝色梦想 发表于 2020-7-31 23:51:02

绝对不建议不加大括号。

永恒的蓝色梦想 发表于 2020-7-31 23:54:57

为什么不能这样写,提示说else有问题:Expected expressionif 和 else 必须挨着。
页: [1]
查看完整版本: c语音if语句问题,求助,谢谢大神