本题要求实现函数,可以返回一个给定月份的英文名称。
函数接口定义:
char *getmonth( int n );
函数 getmonth 应返回存储了 n 对应的月份英文名称的字符串头指针。如果传入的参数 n 不是一个代表月份的数字,则返回空指针NULL。
裁判测试程序样例:
#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!
#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;
}
char *getmonth( int n )
{
char *month[] = {"January","February","March","April",
"May","June","July","August","September","October",
"November","December"};
if(n >= 1 && n <= 12)
{
return month[n-1];
}
else
{
return NULL;
}
}
等价程序
char *getmonth( int n )
{
if(n>12||n<=0) return NULL;
else
{
if(n==1) return "January";
if(n==2) return "February";
if(n==3) return "March";
if(n==4) return "April";
if(n==5) return "May";
if(n==6) return "June";
if(n==7) return "July";
if(n==8) return "August";
if(n==9) return "September";
if(n==10) return "October";
if(n==11) return "November";
if(n==12) return "December";
}
}
字符指针数组
定义
char *pa[10];
定义数组pa, 元素类型是(char *) pa是字符指针的数组