每日程序C语言
题目
输入某年某月某日,判断这一天是这一年的第几天?

程序分析
闰年和平年的算法,用二维数组来存储月份和天数

核心代码

void fun(int year,int month,int day){int s=0;int a[2][12]={0,31,59,90,120,151,181,212,243,273,303,334,0,31,60,91,121,152,182,212,244,274,305,335};if(year<0 || month >12 || month<0 || day<0 || day>31) {printf("您输入的日期不正确");} else if((year%400==0)||(year%4==0&&year%100!=0)){s=a[1][month-1]+day;printf("%d年%d月%d日是%d年的第%d天\n",year,month,day,year,s);} else {s=a[0][month-1]+day;printf("%d年%d月%d日是%d年的第%d天\n",year,month,day,year,s);}
}

这个算法灵活的运用了二维数组,将月份和第几天紧密的联系在了一起,比较巧妙,没有使用原始的switch语句,switch语句用起来显得代码比较冗长

今日掌握

  • 灵活的使用C语言中的各种表达方式,对于解题有灵活便捷的方式
  • 不再使用昨天的getch()函数来让程序暂停,使用了system(“pause”);语句(在头文件stdlib.h),这个语句在C语言和C++语言中均可使用
  • 对二维数组的使用更加熟悉

每日程序C语言2-判断某日期是这一年的第几天相关推荐

  1. 每日程序C语言5-斐波那契兔子数

    每日程序C语言 题目 古典问题,有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后又生一对兔子,假如兔子都不死,问每个月的兔子总数是多少? 算法分析 兔子的对数符合斐波那契数列 斐 ...

  2. 每日程序C语言3-三个数大小排序

    每日程序C语言 题目 输入三个数,按照从小到大的顺序输出 算法分析 在三个数中找出最小的数 比较剩下两个数的大小 依次输出 代码 void sort(int x,int y,int z){if(x&g ...

  3. 每日程序C语言24-回文数字的判断

    题目: 一个5位数,判断它是不是回文数,即12321是回文数,个位与万位相同,十位与千位相同 程序分析 这个题因为只有五位数,所以做起来比较简单,我们可以直接求出来这个数的各个位上面的数,然后用变量保 ...

  4. 每日程序C语言12-统计字符个数

    题目: 输入一行字符,分别统计出其中英文字母.空格.数字和其它字符的个数 程序分析 利用while语句,条件为输入的字符不为'\n' 主要代码 void main(){char c;int lette ...

  5. 每日程序C语言26-直接选择排序

    题目: 对10个数进行排序(1)-直接选择排序 程序分析 直接选择排序是一种简单直观的排序算法,无论什么数据进去都是O(n^2)的时间复杂度,所以一般用在数据规模较小的时候,这个算法唯一的优点就是不占 ...

  6. 每日程序C语言25-查找100以内的素数

    题目: 求100以内的素数 程序分析 我们之前写过一个程序,求固定范围内的素数,和这个题是相同的,但是还是一起来巩固一下 主要代码 int main(){int i,j;printf("10 ...

  7. 每日程序C语言20-利用递归求阶乘

    题目: 利用递归方法求5! 程序分析 找出规律5!=5*4! 主要代码 int fun(int n){//递归函数求阶乘int s=1;if(n>1){s=n*f(n-1);}printf(&q ...

  8. 每日程序C语言14-小球反弹高度问题

    题目: 一球从100米高度自由落下,每次落地后反跳回原来高度的一半,再落下,求它在第10次落地时,共经过过少米?第10次反弹多高? 程序分析 第一次落地之后开始进行弹起落下的来回循环 即 for(in ...

  9. 每日程序C语言13-求1000以内的完数

    题目: 一个数如果恰好等于它的因子之和,这个数就称为"完数".例如6=1+2+3,找出1000以内的所有完数 程序分析 利用for语句,外层循环控制1000这个范围,内层循环控制数 ...

最新文章

  1. C++赋值运算符重载【C++赋值运算符重载】
  2. ORACLE 11G DATA GUARD主从切换
  3. access、strtol函数的使用(后者为C库函数)
  4. 用java解决约瑟夫循环问题,Java实现循环列表解决约瑟夫环问题
  5. github创建maven项目过程
  6. 大数据下,谁来保护裸奔的个人隐私
  7. 文字处理技术:研究下划线,得到一个奇怪的数字4.55
  8. IAR在写结构体时不提示_造价钢结构设计人神器:16个钢结构计算小软件,独立自动换算参数...
  9. 全国省级地级县级行政区sql与json数据
  10. 硬链接(hard link)和符号连接(symbolic link)
  11. Python+OpenCV视频的读取与处理;截取部分图像数据; 边界填充
  12. MyISAM和InnoDB的区别
  13. 使用公式使用户输入年利率,贷款额度和支付年数,计算支付额度
  14. Java 基础常见面试题(持续更新)
  15. 漫画 | 如何向外行解释,Bug是如何产生的?
  16. 计算机专业课程对比,国内外高校非计算机专业计算机课程设置对比与研究
  17. 10年外资的感受和经历
  18. CTP穿透式监管怎么实现代码, 穿透测试API
  19. ReactNative工程自定义脚本
  20. 示例-AT示例-阿里云

热门文章

  1. yum安装nginx php mysql_yum安装nginx+mysql+php
  2. java中多线程编程案例_Java中多线程编程实战的实现线程_Java编程_Java程序员_课课家...
  3. 最佳实践丨三种典型场景下的云上虚拟IDC(私有池)选购指南
  4. 数据库误操作后悔药来了:AnalyticDB PostgreSQL教你实现分布式一致性备份恢复
  5. GitHub Alibaba Group 下 Star 最多的开源项目是?
  6. 如何量化技术团队的效能?
  7. 独家下载!Java工程师成神必备宝典
  8. 连载:阿里巴巴大数据实践—实时技术
  9. 架构师成长之路:如何提升技术掌控力?
  10. 5位最具影响力的程序员