好的,以下是用中文回复: 题目描述: 输入一个正整数repeat (<repeat<10),做repeat次下列运算:编写程序,输入一个月份,输出对应的英文名称,要求用指针数组表示12个月的英文名称。若输入月份错误,输出提示信息。 输入输出示例:括号内为说明,无需输入输出 解题思路: 1. 首先定义一个指针数组,存储12个月份的英文名称; 2. 然后输入月份,判断是否在1~12之间,如果不在则输出提示信息; 3. 如果在1~12之间,则输出对应的英文名称。 代码实现:
时间: 2024-02-27 15:57:33 浏览: 68
c程序题库附答案
好的,以下是用中文回答:
可以按照以下代码实现:
```c
#include <stdio.h>
#include <string.h>
int main() {
char *months[12] = {"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"};
int repeat, month;
scanf("%d", &repeat);
while (repeat--) {
scanf("%d", &month);
if (month < 1 || month > 12) {
printf("Invalid input\n");
} else {
printf("%s\n", months[month - 1]);
}
}
return 0;
}
```
思路解析:
1. 首先定义了一个指针数组 `months`,存储了12个月份的英文名称;
2. 然后输入了一个正整数 `repeat`,表示要进行几次运算,使用 `while (repeat--)` 进行循环;
3. 在循环中,先输入一个月份 `month`,判断是否在1~12之间,如果不在则输出提示信息 `Invalid input`;
4. 如果在1~12之间,则输出对应的英文名称,即 `months[month - 1]`。
注意事项:
1. 在输出月份名称时,要使用 `%s` 格式控制符,并且要指定对应的数组元素,即 `months[month - 1]`;
2. 如果月份输入错误,要输出提示信息,不能直接退出程序。
阅读全文