描述
气象意义上,通常以3~5月为春季(spring),6~8月为夏季(summer),9~11月为秋季(autumn),12月~来年2月为冬季(winter)。请根据输入的年份以及月份,输出对应的季节。
输入描述:
输入的数据格式是固定的YYYYMM的形式,即:年份占4个数位,月份占2个数位。
输出描述:
输出月份对应的季节(用英文单词表示,全部用小写字母)。
思路:
定义变量
用户输入
因为要判断最后的两位数字是否为春夏秋冬
所以就可以将用户输入的数字进行 %100 的操作,以此来去最后两位数字
这是我写的无脑代码:
# include <stdio.h>
int main ()
{
int input = 0;
// printf("输入格式:YYYYMM\n");
scanf("%d",&input);
if(input%100==12||input%100==1||input%100==2)
{
printf("winter\n");
}
else if (input%100==3||input%100==4||input%100==5)
{
printf("spring\n");
}
else if (input%100==6||input%100==7||input%100==8)
{
printf("summer\n");
}
else if (input%100==9||input%100==10||input%100==11)
{
printf("autumn\n");
}
return 0;
}
以下是大佬写的高级点的代码:
#include <stdio.h>
int main()
{
int month = 0;
scanf("%d", &month);
month %= 100;//只截取月份
switch(month)
{
case 12:
case 1:
case 2:
printf("winter\n");
break;
case 3:
case 4:
case 5:
printf("spring\n");
break;
case 6:
case 7:
case 8:
printf("summer\n");
break;
case 9:
case 10:
case 11:
printf("autumn\n");
default:
break;
}
return 0;
}
扩展:Switch 语句
以下内容来自:菜鸟教程
C switch 语句 | 菜鸟教程 (runoob.com)
C switch 语句
switch 语句是一种有限制的控制流语句,它用于根据表达式的值执行不同的代码块。
一个 switch 语句允许测试一个变量等于多个值时的情况,每个值称为一个 case,且被测试的变量会对每个 switch case 进行检查。
语法
C 语言中 switch 语句的语法:
switch(expression){
case constant-expression :
statement(s);
break; /* 可选的 */
case constant-expression :
statement(s);
break; /* 可选的 */
/* 您可以有任意数量的 case 语句 */
default : /* 可选的 */
statement(s);
}
switch 语句说明:
- switch 后面的表达式的值将会与每个 case 后面的常量值进行比较,直到找到匹配的值或者执行到 default(如果存在)。
- 如果找到匹配的值,将执行相应 case 后面的代码块,然后跳出 switch 语句。
- 如果没有匹配的值,并且有 default,则执行 default 后面的代码块。
- 如果没有匹配的值,并且没有 default,则跳过整个 switch 语句直到结束。
switch 语句必须遵循下面的规则:
-
switch 表达式的类型: switch 语句中的表达式必须是整数类型(char、short、int或枚举),或者是能够隐式转换为整数类型的表达式。
-
case 标签的唯一性: 在 switch 语句中,每个 case 标签必须是唯一的,不能有重复的值。
-
默认情况的可选性: switch 语句中的 default 标签是可选的。如果没有匹配的 case 标签,则会执行 default 标签下的代码块(如果存在)。
-
case 标签中的常量值: case 标签中只能是常量值,不能是变量或表达式。
-
case 标签的顺序: switch 语句中的 case 标签的顺序并不重要,它们可以按照任意顺序编写。程序会按照 case 标签出现的顺序依次匹配。
-
break 语句的使用: 在每个 case 标签的代码块结束处通常需要使用 break 语句来终止 switch 语句的执行。如果没有 break 语句,程序将会继续执行下一个 case 标签中的代码,直到遇到 break 语句或 switch 语句结束。
-
switch 语句的嵌套: switch 语句可以嵌套在其他 switch 语句中,但是需要注意代码的可读性和复杂性。
-
case 标签和表达式的范围: switch 语句的 case 标签可以是整数常量表达式,但不能是浮点数或字符串。
流程图
实例:
#include <stdio.h>
int main ()
{
/* 局部变量定义 */
char grade = 'B';
switch(grade)
{
case 'A' :
printf("很棒!\n" );
break;
case 'B' :
case 'C' :
printf("做得好\n" );
break;
case 'D' :
printf("您通过了\n" );
break;
case 'F' :
printf("最好再试一下\n" );
break;
default :
printf("无效的成绩\n" );
}
printf("您的成绩是 %c\n", grade );
return 0;
}
当上面的代码被编译和执行时,它会产生下列结果:
做得好
您的成绩是 B
Hello,各位读者朋友们你们好,欢迎来到 从0至1 的CSDN博客。
一个喜欢文学的理科男,欢迎大家关注我的矩阵平台!
欢迎关注我的短视频矩阵:
微信公众平台:从0至1
今日头条:从0至1
百家号(百度APP):小飞从0至1
抖音:从0至1
小红书:从0至1
知乎:从0至1
CSDN:https://blog.csdn.net/m0_64000959?spm=1000.2115.3001.5343
Gitee:https://gitee.com/from-0-to-1
后续继续更新......