从键盘任意输入一个整型表示的月份值,用指针数组编程输出该月份的英文表示,若输入的月份值不在1~12之间,则输出“Illegal month”。 **输入格式要求:"%d" 提示信息:"Input month number:" **输出格式要求:"month %d is %s\n"
时间: 2024-02-11 14:08:50 浏览: 60
好的,以下是对应的 C 代码:
```
#include<stdio.h>
int main()
{
int month;
char *months[] = {"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"};
printf("Input month number:");
scanf("%d", &month);
if (month >= 1 && month <= 12) {
printf("month %d is %s\n", month, *(months + month - 1));
} else {
printf("Illegal month\n");
}
return 0;
}
```
解释一下代码的思路:
- 首先定义一个字符串指针数组 `months`,数组中存储了 12 个月份的英文名。
- 然后从键盘输入一个整型表示的月份值,存储在变量 `month` 中。
- 判断输入的月份值是否在 1~12 之间,若是,则输出该月份对应的英文名;否则输出 "Illegal month"。
- 输出格式为 "month %d is %s\n"。其中 %d 代表月份值,%s 代表月份对应的英文名。注意,因为 `months` 是一个指针数组,所以要使用 *(months + month - 1) 来取出对应月份的字符串。
希望能够帮到你!