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;
}
相关推荐
程序员 沐阳14 分钟前
JavaScript 内存与引用:深究深浅拷贝、垃圾回收与 WeakMap/WeakSet
开发语言·javascript·ecmascript
Mr_Xuhhh1 小时前
Java泛型进阶:从基础到高级特性完全指南
开发语言·windows·python
汀、人工智能1 小时前
[特殊字符] 第40课:二叉树最大深度
数据结构·算法·数据库架构·图论·bfs·二叉树最大深度
沉鱼.441 小时前
第十二届题目
java·前端·算法
He1955011 小时前
wordpress搭建块
开发语言·wordpress·古腾堡·wordpress块
老天文学家了2 小时前
蓝桥杯备战Python
开发语言·python
赫瑞2 小时前
数据结构中的排列组合 —— Java实现
java·开发语言·数据结构
大熊背2 小时前
ISP Pipeline中Lv实现方式探究之三--lv计算定点实现
数据结构·算法·自动曝光·lv·isppipeline
初夏睡觉2 小时前
c++1.3(变量与常量,简单数学运算详解),草稿公放
开发语言·c++
升职佳兴2 小时前
C盘爆满自救:3步无损迁移应用数据到E盘(含回滚)
c语言·开发语言