还是一道编写程序的题目

输入一个3位数,计算该数各位上的数字之和,如果在[1,12]之内,则输出与和数相对应的月份的英文名称,否则输出***。要求:用指针数组记录各月份英文单词的首地址。
例如:输入:123 输出:1+2+3=6→ June
输入:139 输出:1+3+9=13→ ***

这个程序已经有人回答了

https://zhidao.baidu.com/question/286482689.html

#include <stdio.h>
#include <string.h>
int main()
{int n,t;
char str[50],*p[12]={"Janury","February","March","April","May","June","July","August","September","October","November","December"};
printf("请输入一个三位数:\n");
//scanf("%d",&n);
n=111;
t=n/100+(n%100)/10+n%10;
if(t>=1&&t<=12)
{strcpy(str,*(p+t-1));
printf("%s\n",str);}
else
printf("***\n");
}

在线测试了下是可以的
图片说明

楼上str[50]可以调低点吧