问题如下:

1.所要查询年份的一月一日如何确定?
2.所要查询年份是否为闰年?
3.所要查询年份的每个月份如何打印?
4.打印日历要怎么排版?

程序如下

#include<stdio.h>//查询日历程序
#define N 1973//该年一月一日为周一
int runnian(int y);
int xq(int s);
void rili(int *p,int n,int r);
int main()
{int i,y,a[12]= {31,28,31,30,31,30,31,31,30,31,30,31};printf("请输入你想查询的年份:");scanf("%d",&y);if(runnian(y)) a[1]=29;printf(" ***%d年日历如下***\n",y);printf(" ********1月*********\n");printf(" 一 二 三 四 五 六 天\n");rili(a,12,xq(y));return 0;
}int xq(int s)//确定所查年份的一月一日
{int s0,c=1;if(s>=N){for(s0=N; s0<s; s0++){   if(runnian(s0)) c+=2;else c+=1;}c=c%7;}else{for(s0=N-1; s0>=s; s0--){   if(runnian(s0)) c-=2;else c-=1;}c=7-(-c)%7;}return (c);
}int runnian(int y)//判断所查年份是否为闰年
{if((y%4==0&&y%100!=0)||y%400==0)return 1;elsereturn 0;
}void rili(int *p,int n,int r)//输出日历
{int j,t,s,k;for(s=1; s<r; s++)printf("   ");for(j=0; j<n; j++){for(r=r,t=1; t<=*(p+j); t++,r++){printf(" %-2d",t);if(r%7==0) printf("\n");}if((j+2)<=12){if((j+2)<10){   if((r-1)%7!=0){printf("\n");printf(" ********%d月*********\n",j+2);}else{printf(" ********%d月*********\n",j+2);}}else{if((r-1)%7!=0){printf("\n");printf(" ********%d月********\n",j+2);}else{printf(" ********%d月********\n",j+2);}}printf(" 一 二 三 四 五 六 天\n");}if(r%7!=0){for(s=1; s<(k=r%7); s++)printf("   ");}else{for(s=0; s<(k=(r-1)%7); s++)printf("   ");}}
}

运行结果如下

如何用C语言编写简单的日历查询程序相关推荐

  1. c语言怎么自定义关机时间,C语言编写简单的定时关机程序

    搜索热词 写一个定时关机的小程序,可以立即关闭计算机,也可以一段时间后关闭计算机. 这里主要考察system()命令. 代码实现: #include #include #include int mai ...

  2. c 语言让电脑自动关机,C语言编写简单的定时关机程序

    写一个定时关机的小程序,可以立即关闭计算机,也可以一段时间后关闭计算机. 这里主要考察system()命令. 代码实现: #include #include #include int main() { ...

  3. 如何让c语言编的游戏运行,如何用C语言编写游戏一.doc

    如何用C语言编写游戏 网络游戏是常谈的话题,是交互式娱乐的主力军,是一种 高层次的综合艺术,更是一个民族的文化,世界观的全新传播方式 作为游戏玩家的我们,是不是想设计一个属于自己的游戏呢? 爱玩是人的 ...

  4. 如何用Python语言编写源程序,读取Excel中数据,并画出柱状图?

    现在,随着计算机的普及,以及数据量的增多,对大型数据的分析已经是我们手算不能解决的了,必须借助计算机:那么,学习计算机其实也和我们学习中文.英文一样,要学习他们的写作规则,掌握其中原理.所以,我们首先 ...

  5. 如何下载c语言游戏,如何用C语言编写游戏.doc

    <如何用C语言编写游戏.doc>由会员分享,可在线阅读,更多相关<如何用C语言编写游戏.doc(71页珍藏版)>请在皮匠网上搜索. 1.如何用C语言编写游戏网络游戏是常谈的话题 ...

  6. c语言字符的计数器,如何用C语言编写计数器.docx

    如何用C语言编写计数器 难怪很多前辈说调试是一个程序员最基本的技能,其重要性甚至超过学习一门语言.不会调试的程序员就意味着他即使会一门语言,却不能编制出任何好的软件.?我以前接触的程序大多是有比较成形 ...

  7. 实用c语言函数源码,C语言编写简单朗读小工具(有源码)

    原标题:C语言编写简单朗读小工具(有源码) 最近不少人在后台留言说学C都是面对枯燥的控制台程序,能不能体现一下C语言的实际用途,今天我们就理论结合实践一把:C语言结合VBS脚本编写一个简单的朗读小工具 ...

  8. C语言编写一个赋值程序,实验2 用C语言编写简单程序——2.1 基本数据处理.doc

    实验2 用C语言编写简单程序--2.1 基本数据处理 实验2 用C语言编写简单程序 2.1 基本数据处理 [实验目的] (1)掌握算术表达式和赋值表达式的使用. (2)掌握基本输出函数的使用. (3) ...

  9. c语言案例朗读工具源码,C语言编写简单朗读小工具(有源码)

    原标题:C语言编写简单朗读小工具(有源码) 最近不少人在后台留言说学C都是面对枯燥的控制台程序,能不能体现一下C语言的实际用途,今天我们就理论结合实践一把:C语言结合VBS脚本编写一个简单的朗读小工具 ...

最新文章

  1. ASP.NET Core 2.2中的Endpoint路由
  2. zabbix使用zabbix 数据库做数据分表
  3. idea中如何reimport_IDEA中导入新项目遇坑
  4. R语言入门学习笔记 - 对R软件的认识
  5. 我总结的js性能优化的小知识
  6. 解决Tomcat启动时出现的The APR based Apache Tomcat Native library异常
  7. 服务器中毒 HTML.IFrame.laka
  8. u盘安装Fedora18
  9. 三十五、数据仓库的设计和应用
  10. intellij连接真实的flink集群
  11. java 16 - 15 集合嵌套存储和遍历元素
  12. Codeforces Round #245 (Div. 2): C. Xor-tree(BFS)
  13. PHP在线教育平台源码 网课小程序源码
  14. 金蝶ERP学习之路--财务知识
  15. html 获取浏览器宽高,js获取浏览器高度与宽度的方法
  16. RK3566和S905X3/S905X4对比哪个好?
  17. Qt QLineEdit 信号函数总结
  18. R语言数据分析笔记——t检验(含正态性检验和方差齐性检验在SPSS和R语言中的操作t检验(单样本、双独立样本、配对样本)在Excel、SPSS、R语言中的操作)
  19. 4K动态视频壁纸「Dynamic Wallpaper」
  20. My thoughts through a robot's eyes: An augmented reality-brain–machine interface

热门文章

  1. Hyper-v虚拟工具
  2. java bo代表什么_Java学习入门-08 -基本概念--PO、VO、DAO、BO、POJO
  3. 什么情况下下索引不会被命中
  4. 学python要有多少英语词汇量_“扫地僧”!自学Python编程、英语词汇量15000……北大保安再上热搜...
  5. 如何尽早解决需求变更隐患,降低项目延期风险?
  6. 豆瓣排行250电影数据爬取
  7. 北京中科白癜风医院转姐,回家吧
  8. 使用JavaScript实现出一个简单的购物车
  9. Vs2005下重复定义的问题解决
  10. oracle数据库UNDOTBS空间清理