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

头文件:

#ifndef MAIN_H
#define MAIN_H #include "stdio.h"
#include "math.h"
#include "stdlib.h" //获取某一个月的最大天数
int monthday(int,int ); //判断闰年 ,是返回1,不是返回0
int isleapyear(int ); #endif

主函数:

#include "main.h"

int main()
{
int year,month,days,weekday;
int i,d;
while()
{
printf("please input the year:\n");
scanf("%d",&year);
days = year-+(year-)/+(year-)/-(year-)/;//计算某年第一天是星期几 for(month=;month<=;month++)
{
printf("\t\t****%d年--%d月****\n",year,month);
printf("sun\tmon\ttues\twed\tthur\tfir\tsat\t\n");//表头
i = ; d = ;
weekday = (days + )%; //求星期几
while(i<=weekday) //输出前面的空格
{
printf("\t");
i++;
} while(d<=monthday(month,year)) //输出日期
{
weekday = (days + )%;
if(weekday==) //最后一个是星期六,输出之后要换行
printf("%d\n",d);
else //不是星期六的输出后不换行
printf("%d\t",d);
if(d==monthday(month,year))
printf("\n");
d++;
days++;
}
}
} }

功能函数实现:

#include "main.h"

int monthday(int month,int year)
{
switch(month)
{
case :
case :
case :
case :
case :
case :
case :
return ;break; case :
case :
case :
case :
return ;break; case :
if(isleapyear(year))
{
return ;//闰年29天
break;
}
else
{
return ;
break;
} } } int isleapyear(int year)
{
if((year%==)&&(year%!=)||(year%==))
return ;
else
return ;
}

效果图:

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. Translating between qplot and base graphics

    Translating between qplot and base graphics Description There are two types of graphics functions in ...

  2. vlc player验证交换机igmp

    使用vlc media player发送多播数据,验证交换机igmp的设置是否成功. 链接 http://peakdrive.com/?p=440 http://www.dasblinkenlicht ...

  3. linux下使用tar命令 (转至http://www.cnblogs.com/li-hao/archive/2011/10/03/2198480.html)

    解压语法:tar [主选项+辅选项] 文件或者目录 使用该命令时,主选项是必须要有的,它告诉tar要做什么事情,辅选项是辅助使用的,可以选用. 主选项: c 创建新的档案文件.如果用户想备份一个目录或 ...

  4. 世界上最痛苦的事就是去改别人的bug!!!!

    世界上最痛苦的事就是去改别人的bug!!!!

  5. glsl 多重纹理

    #include"glsl.h" void SHADER::drawBox() { glBegin(GL_QUADS); // Front Face glNormal3f( 0.0 ...

  6. Linux使用expect实现自动登录的脚本

    前提条件服务器已经安装过tcl和expect, 若未安装:可以先执行 yum  install tcl  expect  进行安装 第一步.编写以下自动登录脚本login.sh ########### ...

  7. javaScript实现归并排序

    归并排序是一个O(nlogn)的算法,其基本思想就是一个分治的策略,先进行划分,然后再进行合并,下面举个例子.有这样一组数据: {5,4,1,22,12,32,45,21} 如果对它进行归并排序的话, ...

  8. protobuf语法

    是什么? 目前市面上的unity手游开发主流数据通讯协议的解决方案.protobuf是google提供的一个开源序列化框架,类似于XML,JSON这样的数据表示语言,其最大的特点是基于二进制,因此比传 ...

  9. DEDECMS教程:首页实现分页的两种方法

    有两种办法可以实现: 一.用arclist标签+Ajax实现织梦首页分页 二.交叉栏目ID 实现织梦首页分页 一.用arclist标签+Ajax实现织梦首页分页 1.必须在首页<head> ...

  10. zookeeper命令行

    ZooKeeper -server host:port cmd args stat path [watch] set path data [version] ls path [watch] delqu ...