当前位置: 代码迷 >> C语言 >> 急!!!!!高手帮助
  详细解决方案

急!!!!!高手帮助

热度:92   发布时间:2007-12-09 19:19:53.0
急!!!!!高手帮助
这个程序应该怎么改

#include<stdio.h>
#include<stdlib.h>
#include<string.h>


int main()
{
    void TodayNeedToDo();
    void RememberDayManage();
    void Wordpad();
    void Monthlycalendar();

    int inputnum;

    printf("*********<<<<<Calendar>>>>***********\n");
    printf("Please select one of the following program:\n");
    printf("1:  <TodayNeedToDo>\n");
    printf("2:  <RememberDay Manage>\n");
    printf("3:  <Wordpad>\n");
    printf("4:  <Monthly calendar>\n");
    printf("5:  <exit this program>\n");
    printf("****************************************************\n");
    printf("-----------------------------------------------------n");
    printf("You can select 1-5\n");

    scanf("%d",&inputnum);

    /*not exit program untill input 4*/
    while(inputnum!=5)
    {   
        switch(inputnum)
        {
            case 1: TodayNeedToDo();break;
           case 2: RememberDayManage();break;
           case 3: Wordpad();break;
           case 4: Monthlycalendar;break;
        }

    printf("\n");
    printf("*********<<<<<Calendar>>>>***********\n");
    printf("Please select one of the following program:\n");
    printf("1:  <TodayNeedToDo>\n");
    printf("2:  <RememberDay Manage>\n");
    printf("3:  <Wordpad>\n");
    printf("4:  <Monthly calendar>\n");
    printf("5:  <exit this program>\n");
    printf("****************************************************\n");
    printf("-----------------------------------------------------n");
    printf("You can select 1-5\n");



      scanf("%d",&inputnum);
    }

}
void TodayNeedToDo()
{
}
void RememberDayManage()
{
}
void Wordpad()
{
}
void Monthlycalendar()
{
int main()
{
    int yr,mth,mtd,wkd,mthd[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
    printf("Input the Year and Month(Year-Month):");
    scanf("%d-%d",&yr,&mth);
    if (yr<0||mth<1||mth>12)
        return 0;
    if (JgYr(yr))
        mthd[2]=29;
    mtd=mthd[mth];
    wkd=CalWkd(yr,mth);
    showcld(wkd,mtd);
    return 0;
}

int JgYr(int yr)
{
    if (yr%4==0&&yr%100!=0||yr%100==0&&yr%400==0)
      return 1;
    else
      return 0;
}

int CalWkd(int yr,int mth)
{
    int ds=0,i,rst,wkd;
    int mthd[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
    if (JgYr(yr))
      mthd[2]=29;
    for (i=1;i<mth;i++)
      ds+=mthd[i];
    ds+=1;
    rst=yr-1+(int)((yr-1)/4)-(int)((yr-1)/100)+(int)((yr-1)/400)+ds;
    wkd=rst%7;
    return wkd;
}

showcld(int wkd,int mtd)
{



    int dt=1,i,j=0;
    printf("Sun\tMon\tTue\tWed\tThu\tFri\tSat\n");
    for (i=0;i<wkd;i++)
    {
      printf("\t");
      j++;
    }
    while (j!=7)
    {
        printf("%d",dt);
        if (j<6)
            printf("\t");
        else
            printf("\n");
        dt++;
        j++;
    }
    while (1)
    {
        for (j=0;j<7;j++)
        {
            printf("%d",dt);
            if (j!=6)
                printf("\t");
            else
                printf("\n");
            if (dt!=mtd)
                dt++;
            else
                return 0;
            }
        }
    }


}
搜索更多相关的解决方案: following  calendar  include  

----------------解决方案--------------------------------------------------------
你先说说这个程序是干什么的,哪里有错

一行注释也没有,没法看
----------------解决方案--------------------------------------------------------
日程管理 项目
console基础 可以个人使用的日程管理项目开发
1.技能
1) 今天将要做的事:通过已经预订的日子可以查到并输出要做的事
2)纪念日管理:纪念日情报输入 输出 整理
   纪念日输入:[年_月_时:纪念日内容]可以输入并存储
   纪念日管理:以现在时间为基准 可以删除以前的纪念日内容
   纪念日输出:已经存储的所有纪念日内容按顺序输出
3)时间表:时间表输入:[年-月-时:时间表内容]输入并储存
   时间表整理:现在时间为基准 可以删除以前的时间表内容
   时间表输出:已经储存的时间表内容按顺序输出
4)世界时间,阴历月历<----中选一
  世界时间:我们国家时间为基准 对应其他国家的时间输出
  (其他国家的个数 时间表示方法等任意:最小15个)
  阴历月历:1-12月之间的数字输入 可以输出当月的阴历月历
  (最小2007年以内的月份)
5)终了:programm 终了.

Programm 制作条件
纪念日和时间表输入任何内容都可以记录到txt文件中.纪念日和时间表分开存储在两个文件里.根据时间情报和纪念日情报分开记录-----例如----2007-11-29|**的生日
文件内存储的内容在再次启动programm的时候仍然存在
纪念日和时间表情报读的情况下维持构造体的形态
例如{
     long 时间情报,
     char*(char[],string)内容
     }
已经存储的全体时间表和纪念日内容以时间为基准输出
为了方便使用用UI构成.(程序UI是一种  让使用者方便使用的构成)
UI例子:
日程挂历程序 ver.1                          
1.今天要做的事
2.纪念日管理
3.时间表(会议之类...)
4.世界时间
5终了
---------------------
技能选择(1-5):



日程管理程序 ver.2
< 今天要做的事>
*时间表内容
[2007年11月29日17时]英语学习
[2007年11月29日22时]和朋友见面
*纪念日管理
[2007年11月29日18时]**的生日
----------------------------
如果想回到之前的目录按任意键:




日程管理程序 ver.3
<纪念日管理>
1.纪念日内容增加
2.纪念日内容输出
3.以前纪念日内容删除
4.回到主菜单
---------------------------
技能选择(1-4):


日程管理程序 ver.4
<纪念日内容增加>
-时间情报输入(ex:2007-11-29-13)
:2007-11-29-13
-内容输入
:**的生日
-------------------------------
要储存吗?:

日程管理程序 ver.5
<纪念日内容输出>
[2007年11月29日]**的生日
[2007年11月30日]**的生日
...
--------------------------------
如果回到之前的菜单按任意键

日程管理程序 ver.6


以前纪念日删除
---------------------------------
现在时间(2007-11-29-11)要删除之前的内容吗?
----------------解决方案--------------------------------------------------------
回复 2# 的帖子
能告诉我大概怎么改也行 谢谢
----------------解决方案--------------------------------------------------------
哪里编译出错了呢?具体是哪一行,把提示内容贴出来好点.
----------------解决方案--------------------------------------------------------
说白了,这就是个读写文件的事

把文件操作的内容好好看看,摸索一下很容易搞定
----------------解决方案--------------------------------------------------------
  相关解决方案