目录

问题

代码

解析

问题

输入某年某月某日,输出该日是这一年的第多少天。

代码

#include<stdio.h>
int main()
{int day, month, year, s = 0;printf("请输入年月日并用逗号隔开\n");scanf("%d,%d,%d", &year, &month, &day);switch (month) {case 12:s += 30;case 11:s += 31;case 10:s += 30;case 9:s += 31;case 8:s += 31;case 7:s += 30;case 6:s += 31;case 5:s += 30;case 4:s += 31;case 3:s += 28;case 2:s += 31;       case 1:s += day;break;}if (((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) && (month > 2))  //判断是不是闰年s++;printf("这一天是这一年的第%d天", s);return 0;
}

运行结果是:

请输入年月日并用逗号隔开
2022,10,19
这一天是这一年的第292天
--------------------------------
Process exited after 12.34 seconds with return value 0
请按任意键继续. . .

解析

该题首先需要判断输入的年份是平年还是闰年,可根据闰年的判断依据即是否能被4整除且不能被100整除或者能被400整除,代码表示为:

(year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)

想要判断一天是一年当中的第几天,就需要把当月之前的月份天数都加起来,然后加上当月的号数由于switch语句是从上往下依次运行,因此第一个case从12开始并依次递减到1会使程序简便。(case1开始递增也可以不过较复杂)switch运行代码表示为:

switch (month) {case 12:s += 30;case 11:s += 31;case 10:s += 30;case 9:s += 31;case 8:s += 31;case 7:s += 30;case 6:s += 31;case 5:s += 30;case 4:s += 31;case 3:s += 28;case 2:s += 31;    case 1:s += day;break;}

第一次写博客,如有错误欢迎指出

switch语句应用例题相关推荐

  1. switch语句例题

    使用switch语句改写下列if语句: int a = 3; int x = 100; if(a1) x+=5; else if(a2) x+=10; else if(a==3) x+=16; els ...

  2. switch语句(C++)

    使用多分支条件语句可以对输入的数进行判断,但是当情况很多时,程序的结构会显得比较复杂,为了方便实现很多种情况的选择,C++提供了一种switch语句 switch语句的格式如下 #include &l ...

  3. C语言switch语句的用法详解

    转载: http://c.biancheng.net/cpp/html/39.html C语言提供了一种用于多分支选择的switch语句, 其一般形式为: switch(表达式){      case ...

  4. c语言 switch案例,C语言switch语句实例

    C语言switch语句实例 引导语:switch 语句用于基于不同的条件来执行不同的动作.以下是百分网小编分享给大家的C语言switch语句实例,欢迎阅读学习! C语言还提供了另一种用于多分支选择的s ...

  5. 学习笔记C语言 switch语句

    用一张粗略的图来表示 switch语句的运行结构: 代码格式为: switch(表达式) {case 常量1:语句序列1;break;case 常量2:语句序列2;break;...case 常量n: ...

  6. 再php用if语句实现成绩,php switch语句的使用

    在众多的php条件语句里,基础的判断我们都可以用if语句来解决.这里有些人就要说了,还有switch语句可以进行值的比较.从使用的复杂度来说,switch语句功能上要更加丰富.下面我们就php中swi ...

  7. Go 学习笔记(62)— Go 中 switch 语句中的 switch 表达式和 case 表达式之间的关系

    switch 语句对 switch 表达式的结果类型,以及各个 case 表达式中子表达式的结果类型都是有要求的. 毕竟,在 Go 语言中,只有类型相同的值之间才有可能被允许进行判等操作. 1. sw ...

  8. C#中switch语句注意

    大家肯定对switch语句并不陌生,它能够让程序根据控制表达式的值,从多个动作中作出选择(从逻辑过程看,和多分支语句if-else有些相似).在C++和java中也有这一语句,不过在C#中,这一语句则 ...

  9. c语言switch不允许实型,C语言中switch语句什么意思

    Switch在C语言中是保留字,其作用是进行判断选择.switch(开关语句)常和case break default一起使用. Switch用在编程中,如C语言中它经常跟Case一起使用,是一个判断 ...

  10. switch的case使用数组C语言,使用常量数组的元素作为switch语句中的case

    我正在尝试将一组按键映射到一组命令.因为我处理来自多个地方的命令,所以我想在键和命令之间设置一个抽象层,这样如果我更改底层键映射,我就不必更改很多代码.我目前的尝试看起来像这样: // input.h ...

最新文章

  1. 动态追踪技术思想及应用
  2. 你连原理都还没弄明白?java文档注释快捷键idea
  3. React Fiber 原理介绍
  4. Visual.Assist.X.V10.7.1949的汉化破解补丁
  5. 单例模式饿汉式/懒汉式的区别
  6. 二年级计算机认识键盘教案,认识计算机键盘教案.doc
  7. CSS3 background-clip属性
  8. Django(三) ORM 数据库操作
  9. VoxelMorph运行时遇到的问题
  10. 查看Android打包时签名文件keystore的MD5值
  11. excel f2键功能_您的功能键在Microsoft Excel中做什么
  12. 树莓派的浏览器无法上网
  13. 微信公众号开发(1)--微信公众平台与后台服务器
  14. 美容院如何优化预约服务?
  15. Python style百分制转五分制
  16. Python 于 webgame 的应用(上)
  17. php 标签打印机 bpla,北洋标签打印机BPLA动态链接库二次开发包
  18. 程序功能:创建打印机类Printer,定义抽象方法Print()。 创建针式打印机类DotMatrixtPrinter和墨式打印机InkpetPrinter两个子类,修改测试类,实现该打印机打印。
  19. Not FoundThe requested URL was not found on the server. If you entered the URL manually please chec
  20. maven-cxf自动生成wsdl与xsd文件

热门文章

  1. Kaggle--房价预测
  2. 365抽奖软件 v6.1.7
  3. UNIX/Linux的传奇历史
  4. 基于DLP4500的结构光3DScan应用手册
  5. JAVA_求最小公倍数
  6. 第十六届“振兴杯”计算机网络管理员赛项理论参考题库(1)单选
  7. xlsx表格用计算机公式算,excel表格数据求和与计算器不一致-excel表格用公式计算出来的数值跟计算器计算出来的......
  8. Win7下chm文件打不开的解决办法
  9. 【转】Photoshop 用户名.组织或序列号丢失或无效.应用程序无法继续.
  10. CHM文档编辑制作及电子书的相关问题 - txfast的日志 - 网易博客 http://txfast.blog.163.com/blog/static/40536042200832065417/