这个还是挺实用的。。。。

头文件:

  1. #ifndef MAIN_H
  2. #define MAIN_H
  3.  
  4. #include "stdio.h"
  5. #include "math.h"
  6. #include "stdlib.h"
  7.  
  8. //获取某一个月的最大天数
  9. int monthday(int,int );
  10.  
  11. //判断闰年 ,是返回1,不是返回0
  12. int isleapyear(int );
  13.  
  14. #endif

主函数:

  1. #include "main.h"
  2.  
  3. int main()
  4. {
  5. int year,month,days,weekday;
  6. int i,d;
  7. while()
  8. {
  9. printf("please input the year:\n");
  10. scanf("%d",&year);
  11. days = year-+(year-)/+(year-)/-(year-)/;//计算某年第一天是星期几
  12.  
  13. for(month=;month<=;month++)
  14. {
  15. printf("\t\t****%d年--%d月****\n",year,month);
  16. printf("sun\tmon\ttues\twed\tthur\tfir\tsat\t\n");//表头
  17. i = ; d = ;
  18. weekday = (days + )%; //求星期几
  19. while(i<=weekday) //输出前面的空格
  20. {
  21. printf("\t");
  22. i++;
  23. }
  24.  
  25. while(d<=monthday(month,year)) //输出日期
  26. {
  27. weekday = (days + )%;
  28. if(weekday==) //最后一个是星期六,输出之后要换行
  29. printf("%d\n",d);
  30. else //不是星期六的输出后不换行
  31. printf("%d\t",d);
  32. if(d==monthday(month,year))
  33. printf("\n");
  34. d++;
  35. days++;
  36. }
  37. }
  38. }
  39.  
  40. }

功能函数实现:

  1. #include "main.h"
  2.  
  3. int monthday(int month,int year)
  4. {
  5. switch(month)
  6. {
  7. case :
  8. case :
  9. case :
  10. case :
  11. case :
  12. case :
  13. case :
  14. return ;break;
  15.  
  16. case :
  17. case :
  18. case :
  19. case :
  20. return ;break;
  21.  
  22. case :
  23. if(isleapyear(year))
  24. {
  25. return ;//闰年29天
  26. break;
  27. }
  28. else
  29. {
  30. return ;
  31. break;
  32. }
  33.  
  34. }
  35.  
  36. }
  37.  
  38. int isleapyear(int year)
  39. {
  40. if((year%==)&&(year%!=)||(year%==))
  41. return ;
  42. else
  43. return ;
  44. }

效果图:

C语言实现日历输出的更多相关文章

  1. [转]C语言文件输入/输出ACM改进版(freopen函数)

    C语言文件输入/输出ACM改进版(freopen函数) 2009年5月27日 10:379,457 浏览数发表评论阅读评论   文章作者:姜南(Slyar) 文章来源:Slyar Home (www. ...

  2. C语言中格式化输出的转换说明的fldwidth和precision解析

    首先说什么是C语言的格式化输出,就是printf和它的几个变种(grep -E "v?(sn|s|f)printf").像这些函数都有一个参数format,format中可以加点转 ...

  3. C 语言实例 - 循环输出26个字母

    C 语言实例 - 循环输出26个字母 循环输出 个字母. 实例 #include <stdio.h> int main() { char c; for(c = 'A'; c <= ' ...

  4. YTU 2416: C语言习题 成绩输出

    2416: C语言习题 成绩输出 时间限制: 1 Sec  内存限制: 128 MB 提交: 1111  解决: 417 题目描述 输入n(<=10)个学生的姓名.学号和成绩,将其中不及格者的姓 ...

  5. Java实现 蓝桥杯VIP 算法提高 任意年月日历输出

    算法提高 任意年月日历输出 时间限制:1.0s 内存限制:512.0MB 已知2007年1月1日为星期一. 设计一函数按照下述格式打印2007年以后(含)某年某月的日历,2007年以前的拒绝打印. 为 ...

  6. 「C语言」C输出hello world!系统发生了什么?

    本篇文章全部摘抄自学长博客供以后学习: http://efraim.me/2015/12/05/tech-linux-2015-12-05/ 排版因与博客园编辑器不同而稍作修改. 输出hello wo ...

  7. 关于C语言的printf输出问题

    前端面试的时候老总居然问这个问题,有点震惊…… #include <stdio.h> #include <stdlib.h> void main() { ; printf(&q ...

  8. C语言中如何输出汉字;如何用C语言汉字编码输出汉字(超全版)

    目录 前景提要 方式一: 方式二: 1. 数组方式打印 2. 指针方式打印 3. 优化为while方式 方式三: 1. 使用结构体内数组方式 2. 使用结构体内数组指针方式 (1) 基础写法 (2) ...

  9. 【一套C语言控制台的输出框代码】

    效果演示 可以生成一个输出框 首先 要创建输出框,设置输出框风格,可以设置的元素包括: 左上角符号,右上角符号,左下角符号,右下角符号,以及上下左右边界线符号,理论上,只要你电脑能显示的符号,都可以支 ...

随机推荐

  1. larave框架的安装

    (1)中文官网:http://www.golaravel.com/ (2)composer下载与安装 1:composer网址:getcomposer.org 2:windows下载Composer- ...

  2. php 三级连动及 php+ajax的调试方法

    js获得select的value值 把这个值以ajax的方法传给外页php处理 php得到这个value值,把它作为查询条件进行处理 ajax很神奇,会把这个结果显现出来 总之,ajax负责传值和显示 ...

  3. Android 利用cursor来进行排序(转至http://blog.csdn.net/yangzongquan/article/details/6547860)

    主要思路是:override move系列的方法,让cursor以自己想要的顺序来移动,从而达到对cursor排序的目的.比如数组A0里有 4(0),3(1),1(2),2(3),括号内为位置,排序后 ...

  4. js学习之--Bootstrap Modals(模态框)

    http://www.runoob.com/bootstrap/bootstrap-v2-modal-plugin.html http://outofmemory.cn/bootstrap/tutor ...

  5. CentOS下添加sudo用户

    一 .sodo的使用 1.1 关于sudo Sudo是linux系统中,非root权限的用户提升自己权限来执行某些特性命令的方式,它使普通用户在不知道超级用户的密码的情况下,也可以暂时的获得root权 ...

  6. java web 复选框checked

    熟悉web前端开发的人都知道,判断复选框是否选中是经常做的事情,判断的方法很多,但是开发过程中常常忽略了这些方法的兼容性,而是实现效果就好了.博主之前用户不少方法,经常Google到一些这个不好那个不 ...

  7. [入门阅读]怎样在android中解析JSON

    JSON入门介绍:http://kirin.javaeye.com/blog/616226 也参考了此篇:http://blog.163.com/fushaolin@126/blog/static/1 ...

  8. can not connect to MySQL server on "10.30.48.153"(13)

    国庆节前好好的程序,完了回来愣是不能跑了! 真是纳闷了,而且邮件别人都发出去了,等于这跟别人一边使用一遍救火一样子了.     查了一下午,一直以为是机器mysql服务的问题,或者是我代码的问题.该找 ...

  9. (转)Linux开启mysql远程连接的设置步骤

    Mysql默认root用户只能本地访问,不能远程连接管理mysql数据库,Linux如何开启mysql远程连接?设置步骤如下: 1.GRANT命令创建远程连接mysql授权用户itlogger mys ...

  10. MathType公式保存后为什么字体会变化

    在使用MathType数学公式编辑器的时候,很多的用户朋友是新手会遇到一些问题,比如,有时我们保存后却发现MathType公式字体变化了,原本的斜体变成了正体,面对这种问题我们该如何解决呢?下面就来给 ...