Copyright (c) 2016,
烟台大学计算机与控制学院 All ringts reserved.
文件名称:OJ总结<4>-日期妙算星座
作 者:王兴振
完成日期:2016年11月14日
版 本 号:未知
题目描述:
近几年星座运势十分流行,据说一年之中根据月份可以分出十二个星座,它们分别是:
摩羯座(12.21-1.19),水瓶座(1.20-2.18),双鱼座(2.19-3.20),白羊座(3.21-4.19),
金牛座(4.20-5.20),双子座(5.21-6.21),巨蟹座(6.22-7.22),狮子座(7.23-8.22),
处女座(8.23-9.22),天秤座(9.23-10.23),天蝎座(10.24-11.22),射手座(11.23-12.21)
,猴哥对星座很感兴趣,他想快速根据自己的出生日期求出他所属的星座,请你编程帮助他吧~
#include <stdio.h>
void constellation(int year,int month,int day); /*函数声明*/
int main()
{
int year,month,day;
scanf("%d %d %d",&year,&month,&day); /*输入变量*/
constellation(year,month,day); /*调用函数*/
return 0;
}
主程序已给出,提交时只需提交constellation函数
输 入:
日期
输 出;
星座名字
样例输入:
2000 12 31
样例输出:
摩羯座
答 案:
void constellation(int year,int month,int day); /*函数声明*/
int main()
{
int year,month,day;
scanf("%d %d %d",&year,&month,&day); /*输入变量*/
constellation(year,month,day); /*调用函数*/
return 0;
}
void constellation(int year,int month,int day)
{
switch (month)
{
case 1:
if (day<=19)
printf("摩羯座");
else
printf("水瓶座");
break;
case 2:
if (day<=18)
printf("水瓶座");
else
printf("双鱼座");
break;
case 3:
if (day<=20)
printf("双鱼座");
else
printf("白羊座");
break;
case 4:
if (day<=19)
printf("白羊座");
else
printf("金牛座");
break;
case 5:
if (day<=20)
printf("金牛座");
else
printf("双子座");
break;
case 6:
if (day<=21)
printf("双子座");
else
printf("巨蟹座");
break;
case 7:
if (day<=22)
printf("巨蟹座");
else
printf("狮子座");
break;
case 8:
if (day<=22)
printf("狮子座");
else
printf("处女座");
break;
case 9:
if (day<=22)
printf("处女座");
else
printf("天秤座");
break;
case 10:
if (day<=23)
printf("天秤座");
else
printf("天蝎座");
break;
case 11:
if (day<=24)
printf("天蝎座");
else
printf("射手座");
break;
case 12:
if (day<=23)
printf("射手座");
else
printf("摩羯座");
break;
}
}
总 结:
这个题就是麻烦。但思路简单,我用的switch语句。