我用C语言的IF函数得出的结果怎么连else的结果一起出来

源码在下面,if的结果和else的结果一起出来了

#include "stdio.h"
void main()
{ int a=0,b=201165,c=5201314,d=201175,e=201185;
printf("ZS \3 HY\n");
scanf("%d",&a);
if(c==a)
printf("爱你一生一世,我说过我要娶你。\3 \n");
if(b==a)
printf("那时,我们刚在一起。\3 \n");
if(d==a)
printf("我们在一起的第一个月,那是我很高兴。\3 \n");
if(e==a)
printf("我们在一起的第二个月,那是我们很好。\3 \n");
else
printf("没有这个日期耶,如果我忘记了,你告诉我再加进去~ \n");
getch();
}

因为else和最近的上面一个if匹配,所以就是

if(d==a)
printf("我们在一起的第一个月,那是我很高兴。\3 \n");
{

if(e==a)
printf("我们在一起的第二个月,那是我们很好。\3 \n");
else
printf("没有这个日期耶,如果我忘记了,你告诉我再加进去~ \n");
}
如果输入的是一个201165,那么201165不等于e,会执行else。

最好用 switch 来做这种多项选择。追问

不用的话怎么改?

追答

else
printf("没有这个日期耶,如果我忘记了,你告诉我再加进去~ \n");
改为

if(b!=a &&c!=a&&d!=a&&e!=a) //如果b不等于a且c不等于a且d不等于a且e不等于a

printf("没有这个日期耶,如果我忘记了,你告诉我再加进去~ \n");

温馨提示:答案为网友推荐,仅供参考