2820 - 【验证型】第11章:指针和数组 11.3 月份输出

通过次数

0

提交次数

0

时间限制 : 1 秒 内存限制 : 128 MB

从键盘任意输入整型数表示的月份值,用指针数组编程输出该月份的英文表示,输入的月份值不在1~12之间,则输出“Illegal month"。

题目输入

输入的第一行为一个正整数n1<=n<=15),表示测试样例的个数。接下来n行,每行输入一个整型数。

题目输出

输入/输出样例

输入格式

15
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

输出格式

January
February
March
April
May
June
July
August
September
October
November
December
Illegal month
Illegal month
Illegal month

C语言解答

#include<stdio.h>
#define N 15
int main()
{
	char mon[12][20] = {"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"};
	int iput[N] = {0};
	int i;
	for(i = 0; i < N; i++)
	{
		scanf("%d", &iput[i]);
	}
	for(i = 0; i < N; i++)
	{
		if(iput[i] > 12 || iput[i] < 1)
		{
			printf("Illegal month\n");
		}
		else
		{
			switch(iput[i])
			{
				case 1: printf("%s\n", mon[iput[i]-1]);break;
				case 2: printf("%s\n", mon[iput[i]-1]);break;
				case 3: printf("%s\n", mon[iput[i]-1]);break;
				case 4: printf("%s\n", mon[iput[i]-1]);break;
				case 5: printf("%s\n", mon[iput[i]-1]);break;
				case 6: printf("%s\n", mon[iput[i]-1]);break;
				case 7: printf("%s\n", mon[iput[i]-1]);break;
				case 8: printf("%s\n", mon[iput[i]-1]);break;
				case 9: printf("%s\n", mon[iput[i]-1]);break;
				case 10: printf("%s\n", mon[iput[i]-1]);break;
				case 11: printf("%s\n", mon[iput[i]-1]);break;
				case 12: printf("%s\n", mon[iput[i]-1]);break;
			}
		}
	}
	return 0;
}

C++解答

#include <iostream>
#include<cstring>
using namespace std;
int main(){
  int n,i,M[100]; 
  char *name[12]={"January","February","March","April","May","June","July","August","September","October","November","December"};
  cin >>n;
  for(i=0;i<n;i++){
  	cin >>M[i];
  	if(M[i]>0&&M[i]<13){
  		int s =M[i];
  		 cout << name[s-1]<<endl;
  	}
  	 
  	else cout<<"Illegal month"<<endl;
  }
  return 0 ;
}