C语言:月份缩写

题目描述

从一月份到十二月的英文全称依次是:"January","February","March","April","May","June","July","August","September","October","November","December"

对应的缩写依次是:"Jan.","Feb.","Mar.","Apr.","May.","Jun.","Jul.","Aug.","Sep.","Oct.","Nov.","Dec."。注意首字母大写,后面有个"."

现在用户来输入一个月份的英文,请程序输出对应的英文缩写,无论用户的单词是大写还是小写,均应给出正确的英文缩写。如果输入的英文单词错误,请输出"Error"

例如,用户输入"JULY",程序应输出"Jul."

若用户输入的是"augest",程序应输出"Error"
输入格式

一个英文单词,表示月份
输出格式

对应的月份缩写

分析

将字母全部转换为小写+字符串相等判断

字母全部转换为小写函数

复制代码
void change(char s[10])
{
	int i;
	for(i=0;i<10;i++)
	{
		if(s[i]>='A' && s[i]<='Z')
		{
			s[i]+=32;
		}
	}
}

完整代码

复制代码
#include <stdio.h>
#include <math.h>
#include <string.h>
void change(char s[10])
{
	int i;
	for(i=0;i<10;i++)
	{
		if(s[i]>='A' && s[i]<='Z')
		{
			s[i]+=32;
		}
	}
}

int main()
{
	char mon[12][10]={"january","february","march","april","may","june","july","august","september","october","november","december"};
	char suo[12][10]={"Jan.","Feb.","Mar.","Apr.","May,","Jun.","Jul.","Aug.","Sep.","Oct.","Nov.","Dec."};
	
	char s[10];
	gets(s);
	change(s);
	
	int i;
	int c=0;
	int flag=0;;
	for(i=0;i<12;i++)
	{
		c=strcmp(s,mon[i]); 
		if(c==0)
		{
			flag=1;
			printf("%s",suo[i]);
		}
	}
	
	if(flag==0)
	{
		printf("Error");
	}
	return 0;
}
相关推荐
2601_962071571 小时前
【Java报错已解决】org.springframework.beans.factory.BeanCreationException
java·开发语言
淡海水3 小时前
07-04-并发-ConcurrentBag-T-工作窃取WorkStealing算法
开发语言·算法·c#·bag·concurrent·workstealing
leobertlan3 小时前
好玩系列:训练一个神经网络模型指导小孩玩游戏2-大局观教练
算法
CS_Zero3 小时前
C语言sizeof是函数吗?
c语言·开发语言
Tisfy4 小时前
LeetCode 3876.构造奇偶一致的数组 II:三种情况分类讨论(其实还是脑筋急转弯)
算法·leetcode·题解·脑筋急转弯
-今昭-4 小时前
《V2V 迁移实战:将 VMware 虚拟机转为 OpenStack 可用 Glance qcow2 镜像》
开发语言·python
乐迪信息4 小时前
智慧港口船舶AI算法实现在线状态监测
大数据·人工智能·深度学习·算法·计算机视觉
黑马程序员毕设6 小时前
基于Java的医院药品管理系统的优化设计与实现
java·开发语言·spring boot·小程序·架构·课程设计·毕设
木井巳6 小时前
【BFS/DFS 解决 FloodFill 算法】太平洋大西洋水流问题
java·算法·leetcode·深度优先·广度优先·宽度优先·推荐算法
心抵鹊6 小时前
归并排序之翻转对(hard)
数据结构·算法