QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 754|回复: 2

求教有关用TC3和VC6来做日历。

[复制链接]
发表于 2003-10-13 18:10:32 | 显示全部楼层 |阅读模式
小生在书上看到一道题,是编程序写一个有关日历的。道先就是要计算出今年的1点是星期几(公元0年1月1号是星期天),然后才算一个月有多少天,下一个月一号又是星期几。我的程序如下:
[code:1]
#include<stdio.h>

int RunNian(int);
int root(int);

int n=0;                       //计算从公元0年1号到现在一共有多少天

int main()
{
           int year,a;
           printf("请输入想打印的年号:");
           scanf("%d",&year);
           a=root(year);
           printf("%d年1月1号是星期%d",year,a);
           return 0;
}

int RunNian(int a)                     //算哪年是闰年
{
            return((a%4==0&&a%100!=0)||a%400==0);
}

int root(int year)                       //求从元年1月1号到今天有多少天,
{                               //%7后,得今天星期几
        int i;
        for(i=0;i<year;i++)
                         if(RunNian(i))
                                         n+=366;
                         else
                                         n+=365;
             return n%7;
}
[/code:1]
当输入2002年的时候,结果得到:
[code:1]
2002年1月1号是星期:1
[/code:1]
我看了一下日历,2002年1月1 号是星期2。我搞不明白,为什么我少算了一天????有哪位大哥指点我一下??小生在这里先谢过了。
发表于 2003-10-17 17:20:25 | 显示全部楼层
你那个RunNian函数根本没有使用阿~~
回复

使用道具 举报

 楼主| 发表于 2003-10-18 00:32:55 | 显示全部楼层
不好意思,,RunNian是我自己写的程序里用的,书上是用root的,所以我打错了。。我改一下。。。
对了,另外这个程序在TV下运行得1,在VC下运行得2。。。我也不知道哪个对了。看起来应该是2才对。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-13 03:56 , Processed in 0.056703 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表