| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 304 人关注过本帖
标题:用C写的日历,有个问题,当输入周六时运行结果一月只有30天。
只看楼主 加入收藏
foxfantasy
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-4-14
结帖率:0
收藏
已结贴  问题点数:20 回复次数:2 
用C写的日历,有个问题,当输入周六时运行结果一月只有30天。
求高手修改这个程序,当输入周六时输出的一月只有30天是怎么回事?
#include"stdio.h"

int shuchu(int m, int a);

int main()
{
 int year, date;
 int i = 0;
 int data[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};

 printf("请输入要查找的是哪一年: ");
 scanf("%d", &year);

 printf("请输入该年的一月一日是星期几(星期一则输入1,其他以此类推):");
 scanf("%d", &date);
 date++;
 date = date % 7;

 if (((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0))
 {
  data[1] = data[1] + 1;
 }

 while (i < 12)
 {
  printf("  %d 月\n", i + 1);
  date = shuchu(data[i], date);
  i++;
 }

 return (0);

}
int shuchu(int m, int date)
{
 int i, a = date;
 int j = 1;

 printf("                     六\n\n");
 for (i = 1; i <= m + a - 1; i++)
 {
  if (i < a)
  {
   printf("     ");
  }
  else
  {
   printf("%5d", j);
   if (i % 7 == 0)
   {
    printf("\n");
   }
   j++;
  }
 }
 printf("\n\n\n");

 if ((m + a) % 7 == 0)
 {
  return ((m + a - 1) % 7 + 1);
 }
 else
 {
  return ((m + a) % 7);
 }
}
搜索更多相关主题的帖子: 日历 
2011-04-14 22:31
qq1023569223
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:湖南科技大学
等 级:贵宾
威 望:26
帖 子:2753
专家分:13404
注 册:2010-12-22
收藏
得分:20 
你这程序的目的是什么?

   唯实惟新 至诚致志
2011-04-15 06:57
foxfantasy
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-4-14
收藏
得分:0 
输入年份和该年的第一天是星期几,输出该年的日历。
2011-04-15 07:50
快速回复:用C写的日历,有个问题,当输入周六时运行结果一月只有30天。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018086 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved