用c语言实现星座判断
时间: 2024-09-13 22:00:19 浏览: 39
在C语言中实现星座判断,首先需要了解每个星座对应的日期范围。然后可以通过获取用户输入的出生日期,并与各个星座的日期范围进行比较,从而判断出用户的星座。以下是一个简单的实现示例:
```c
#include <stdio.h>
int main() {
int day, month;
char *zodiacSigns[] = {
"摩羯座", "水瓶座", "双鱼座", "白羊座",
"金牛座", "双子座", "巨蟹座", "狮子座",
"处女座", "天秤座", "天蝎座", "射手座"
};
int zodiacIndex = 0;
// 获取用户输入的出生日期
printf("请输入你的出生月份和日期(如:12 25):");
scanf("%d %d", &month, &day);
// 根据日期判断星座
if (month == 1 && day >= 20 || month == 2 && day <= 18) {
zodiacIndex = 0;
} else if (month == 2 && day >= 19 || month == 3 && day <= 20) {
zodiacIndex = 1;
} else if (month == 3 && day >= 21 || month == 4 && day <= 19) {
zodiacIndex = 2;
} else if (month == 4 && day >= 20 || month == 5 && day <= 20) {
zodiacIndex = 3;
} else if (month == 5 && day >= 21 || month == 6 && day <= 20) {
zodiacIndex = 4;
} else if (month == 6 && day >= 21 || month == 7 && day <= 22) {
zodiacIndex = 5;
} else if (month == 7 && day >= 23 || month == 8 && day <= 22) {
zodiacIndex = 6;
} else if (month == 8 && day >= 23 || month == 9 && day <= 22) {
zodiacIndex = 7;
} else if (month == 9 && day >= 23 || month == 10 && day <= 22) {
zodiacIndex = 8;
} else if (month == 10 && day >= 23 || month == 11 && day <= 21) {
zodiacIndex = 9;
} else if (month == 11 && day >= 22 || month == 12 && day <= 21) {
zodiacIndex = 10;
} else if ((month == 12 && day >= 22) || (month == 1 && day <= 19)) {
zodiacIndex = 11;
}
// 输出星座结果
printf("你的星座是:%s\n", zodiacSigns[zodiacIndex]);
return 0;
}
```
这段代码首先定义了一个星座数组,然后根据用户输入的月份和日期来确定星座的索引,最后输出对应的星座。注意这个例子假定了公历日期,并且没有考虑闰年的情况。
阅读全文