合抱之木,生于毫末;九层之台,起于累土;千里之行,始于足下。💪🏻
一、题目描述 ⭐️
裁判测试程序样例:
#include <stdio.h>
char *getmonth( int n );
int main()
{
int n;
char *s;
scanf("%d", &n);
s = getmonth(n);
if ( s==NULL ) printf("wrong input!\n");
else printf("%s\n", s);
return 0;
}
/* 你的代码将被嵌在这里 */
输入样例1
5
输出样例1
May
输入样例2
15
输出样例2
wrong input!
二、代码(C语言)⭐️
char *getmonth(int n) {
// 如果传入的参数 n 不是一个代表月份的数字(即小于 1 或大于 12),则返回空指针 NULL。
if (n < 1 || n > 12) {
return NULL;
}
// 定义一个常量字符串指针数组,存储 12 个月份的名称。
// 每个元素是一个指向常量字符串的指针。
const char *result[] = {
"January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December"
};
// 返回对应月份的字符串指针。
// 由于数组下标从 0 开始,而月份从 1 开始,因此需要 n - 1 来正确索引。
return result[n - 1];
}