基于visual Studio2013解决C语言竞赛题之1078打印日历

时间:2022-11-24 21:50:13



基于visual Studio2013解决C语言竞赛题之1078打印日历

题目

基于visual Studio2013解决C语言竞赛题之1078打印日历

解决代码及点评


/************************************************************************/
/* 78. 打印年历。
要求:每行打印两个月日历。如下图: 一月 二月 三月 四月 . .
. .
. .
十一月 十二月 思考: 每行打印三个月日历。
*/
/************************************************************************/
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int a, i, j, n, k, t, w, x, z;
static int DM[12][60];
int m[12] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
char wst[] = " Sun Mon Yue Wed Thu Fri Sat "; w = 2; //第一天星期二
for(i=0; i<12; i++)
{
a = 1;
for(j=0; j<6; j++)
{
for(k=0; k<=6; k++)
{
while(k<w) k=k+1;
DM[i][j*10+k] = a; /*计算i月的第j个星期的星期w的日期为a*/
a=a+1;
w = k+1;
if(w==7) w=0;
if(a>m[i]) break;
}
if(a>m[i]) break;
}
}
printf("input x(2,3): ");
scanf_s("%d", &x); //x 为每行显示个数 for(n=0; n<12/x; n++)
{
t = x*(n)+1;
printf("\n ");
for(z=1; z<=x; z++)
{
for(k=1; k<=15; k++)
printf(" ");
printf("%2d", t+z-1); /*打印月号*/
for(k=0; k<14; k++)
printf(" ");
}
printf("\n ");
for(z=0; z<x; z++) /*横排x个月*/
printf("%s", wst); /*星期标题*/
for(j=0; j<6; j++)
{
printf("\n ");
for(i=t-1; i<t+x-1; i++)
{
printf(" ");
for(k=0; k<=6; k++)
if(DM[i][j*10+k]==0) /*打印空格*/
printf(" ");
else
printf("%4d", DM[i][j*10+k]);/*日期*/
}
}
}
system("pause");
return 0;
}

代码编译以及运行

由于资源上传太多,资源频道经常被锁定无法上传资源,同学们可以打开VS2013自己创建工程,步骤如下:

1)新建工程

基于visual Studio2013解决C语言竞赛题之1078打印日历

2)选择工程

基于visual Studio2013解决C语言竞赛题之1078打印日历

3)创建完工程如下图:

基于visual Studio2013解决C语言竞赛题之1078打印日历

4)增加文件,右键点击项目

基于visual Studio2013解决C语言竞赛题之1078打印日历

5)在弹出菜单里做以下选择

基于visual Studio2013解决C语言竞赛题之1078打印日历

6)添加文件

基于visual Studio2013解决C语言竞赛题之1078打印日历

7)拷贝代码与运行

基于visual Studio2013解决C语言竞赛题之1078打印日历

程序运行结果

基于visual Studio2013解决C语言竞赛题之1078打印日历

代码下载

http://download.csdn.net/detail/yincheng01/6681845

解压密码:c.itcast.cn






基于visual Studio2013解决C语言竞赛题之1078打印日历的更多相关文章

  1. 基于visual Studio2013解决C语言竞赛题之0603打印素数

     题目

  2. 基于visual Studio2013解决C语言竞赛题之0808打印链表

     题目

  3. 基于visual Studio2013解决C语言竞赛题之1048打印矩阵

      题目 解决代码及点评 /* 48. 找规律填写N×N方阵.如N=8时, 其方阵为: */ #include <stdio.h> #include <stdlib.h& ...

  4. 基于visual Studio2013解决C语言竞赛题之1045打印成绩

       题目 解决代码及点评 /* 功能:用记录来描述一个学生的成绩情况,内容包括:姓名.学号.数学成绩和PASCAL成绩. 要求对一个小组的10个学生的成绩进行统计处理: 1)计算学生的总 ...

  5. 基于visual Studio2013解决C语言竞赛题之1058打印数字

       题目 解决代码及点评 /************************************************************************/ /* 58 ...

  6. 基于visual Studio2013解决C语言竞赛题之1057打印加数

       题目 解决代码及点评 /* 功能: 已知N是正整数, 它可拆写成三个正整数N1.N2和N3之和的形式N=N1+N2+N3. 请编程序打印出满足上式的全部组合,并当N1.N2和N3中至 ...

  7. 基于visual Studio2013解决C语言竞赛题之1071打印工资

        题目 解决代码及点评 /************************************************************************/ /* ...

  8. 基于visual Studio2013解决C语言竞赛题之0523魔方阵

     题目

  9. 基于visual Studio2013解决C语言竞赛题之0518回文数

     题目

随机推荐

  1. WebGL中添加天空盒的两种方法

    天空盒 的添加可以让模型所在的场景非常漂亮,而其原理也是非常简单的,相信看完下面代码就可以明白了. 说到天空盒的两种方法,倒不如说是两种写法,分别用了纹理加载的两个方法:loadTexture和loa ...

  2. git 推送

    echo "# shops" >> README.md git init git add README.md git commit -m "first com ...

  3. 20个精美的免费 PSD 界面设计素材【免费下载】

    在这篇文章中,我们给大家收集了20个最新出炉的 UI 设计素材.这些来自优秀设计师的 PSD 源文件素材让其它的设计师们在设计用户界面原型的时候能够非常便利.些界面素材让他们使用快速和有效的方式完成用 ...

  4. 零基础Android学习笔记-01 安卓开发环境搭建

    安卓开发环境搭建. 1.首先准备JDK,从官网找到JDK下载地址,原来做.NET不熟悉JAVA,干脆用最新的,下载了JDK 1.7的版本.原来装过1.5还要配置环境变量什么的.但1.7好像很给力,装好 ...

  5. Project Euler 87 :Prime power triples 素数幂三元组

    Prime power triples The smallest number expressible as the sum of a prime square, prime cube, and pr ...

  6. 【转】 U3D DrawCall优化手记 - 夜阑卧听风吹雨

     原文  http://www.cnblogs.com/ybgame/p/3588795.html 在最近,使用U3D开发的游戏核心部分功能即将完成,中间由于各种历史原因,导致项目存在比较大的问题,这 ...

  7. PHP获取文件扩展名的多种方法

    PHP获取文件扩展名的N种方法. 第1种方法: function get_extension($file) { substr(strrchr($file, '.'), 1): } 第2种方法: fun ...

  8. 【转】Android下编译jni库的二种方法&lpar;含示例&rpar;

    原文网址:http://blog.sina.com.cn/s/blog_3e3fcadd01011384.html 总结如下:两种方法是:1)使用Android源码中的Make系统2)使用NDK(从N ...

  9. &lpar;52&rpar;Wangdao&period;com第七天&lowbar;字面量&sol;变量&lowbar;标识符&lowbar;数据类型&lowbar;数据的存储

    JavaScript 字面量 和 变量 字面量:就是那些不可变的值,如1,2,100,2000,Infinity,NaN 变量: 变量,代表的当前随机分配的内存地址. 变量的值,是可变的,可以用来保存 ...

  10. Windows服务器开发和Linux服务器软件开发的区别

    大型网页游戏服务器开发(Windows+Linux) 进程监听 负载均衡 数据库分发 MapGIS IGServer(Java C++)