以下是一个用C语言编写的程序,它定义了一个枚举类型来表示一星期的每天,并根据用户输入的数字输出对应的星期几。如果输入的数字不在0到6之间,会提示用户重新输入。 ```c #include <stdio.h> // 定义枚举类型 typedef enum { sunday, monday, tuesday, wednesday, thursday, friday, saturday } Weekday; int main() { int input; Weekday day; // 输入数字 printf("请输入0-6之间的数字: "); scanf("%d", &input); // 检查输入是否在有效范围内 if (input < 0 || input > 6) { printf("请输入0-6之间的数字\n"); } else { // 将输入的数字转换为枚举类型,并输出对应的星期几 day = (Weekday)input; switch (day) { case sunday: printf("sunday\n"); break; case monday: printf("monday\n"); break; case tuesday: printf("tuesday\n"); break; case wednesday: printf("wednesday\n"); break; case thursday: printf("thursday\n"); break; case friday: printf("friday\n"); break; case saturday: printf("saturday\n"); break; default: // 这个default分支实际上不会被执行,因为0-6已经覆盖了所有枚举值 break; } } return 0; } ``` 程序解释 1. 定义枚举类型:使用`typedef enum`定义了一个名为`Weekday`的枚举类型,包含了一周的七天。 2. 输入数字:使用`scanf`函数读取用户输入的数字。 3. 检查输入范围:判断输入的数字是否在0到6之间。如果不在,输出提示信息。 4. 转换并输出:将输入的数字转换为枚举类型,并使用`switch`语句输出对应的星期几。 示例 - 输入样例1:`8` - 输出样例1:`请输入0-6之间的数字` - 输入样例2:`0` - 输出样例2:`sunday` 这个程序简单明了,能够有效地根据用户输入的数字输出对应的星期几。 [2024-10-31 13:16:19 | AI写代码神器 | 576点数解答]