| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 855 人关注过本帖
标题:小程序 我还是不会做,帮帮忙
只看楼主 加入收藏
sk8er_bon
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2005-12-21
收藏
 问题点数:0 回复次数:9 
小程序 我还是不会做,帮帮忙
输入任意一年,能显示出该年的6月份的月历,而且要求显示出大号字体的数字年份
我做了几次了都不成功,马上要交了,高手帮帮忙啊
搜索更多相关主题的帖子: 而且 
2005-12-21 16:38
303770957
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:838
专家分:2125
注 册:2005-9-10
收藏
得分:0 
看看这个吧:
#include "stdio.h"
void main()
{int year,month,day,weekday=0,len_of_month,i;
printf("此程序实现输入任一年份后打印该年的年份\n");
printf("请输入年份(输入负数退出系统):");
do{loop:scanf("%d",&year);
if(year<=0) break;
else if(year>=9999)
{printf("对不起,您输入的数据过大,请重新输入!\n"); goto loop;}
for(i=1;i<year;i++)
{if(i%400==0||i%100!=0&&i%4==0) weekday++; /*计算year年前闰年的个数*/
else continue;}
weekday=(year%7+weekday%7)%7; /*以1年1月1日是星期一来确定year年元旦的星期数*/
for(month=1;month<=12;month++)
{printf("\n\t < %d月>\n",month);
printf("---------------------------\n");
printf("日 一 二 三 四 五 六 \n");
printf("---------------------------\n");
for(i=0;i<weekday;i++)printf(" ");/* 四个空格(输出元旦星期数前的空格数)*/
if(month==4||month==6||month==9||month==11) len_of_month=30;
else if(month==2)
{if(year%4==0&&year%100!=0||year%400==0) len_of_month=29;
else len_of_month=28;
}
else len_of_month=31;
for(day=1;day<=len_of_month;day++)
{ printf("%-4d",day);weekday++;
if(weekday==7){ weekday=0;printf("\n");}
}getch();
}
printf("\n请输入年份(输入负数退出系统):");weekday=0;
}while(year>0);
}

♂ 死后定当长眠,生前何须久睡。♀
2005-12-21 17:31
sk8er_bon
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2005-12-21
收藏
得分:0 

这样能实现大体年份的操作吗

2005-12-22 20:22
ryxhh
Rank: 1
等 级:新手上路
威 望:1
帖 子:63
专家分:0
注 册:2005-12-18
收藏
得分:0 

代码写的很不错啊,但是怎样输出比较大的字体,这可能是一个难题


2005-12-22 20:50
天鹰Aquila
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2005-12-17
收藏
得分:0 
嗯,不错的程序。

2005-12-22 21:28
x_talent
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2005-12-23
收藏
得分:0 

写的不错啊~~

支持~~~~~~~!!!!!!!!

2005-12-23 10:06
yangke_uestc
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2005-12-23
收藏
得分:0 

for(i=1;i<year;i++)
{if(i%400==0||i%100!=0&&i%4==0) weekday++; /*计算year年前闰年的个数*/
else continue;}
weekday=(year%7+weekday%7)%7; /*以1年1月1日是星期一来确定year年元旦的星期数*/
这一段算法的依据是什么?谢谢

2005-12-24 09:56
sk8er_bon
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2005-12-21
收藏
得分:0 

对啊
怎么实现大体的年份类似于:———— ————
| | |
| | |
| | |
———— | |
| | |
| | |
———— ————


2005-12-25 13:05
cleverfox
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2005-11-21
收藏
得分:0 

for(i=1;i<year;i++)
{if(i%400==0||i%100!=0&&i%4==0) weekday++; /*计算year年前闰年的个数*/
else continue;}
weekday=(year%7+weekday%7)%7; /*以1年1月1日是星期一来确定year年元旦的星期数*/
这一段算法的依据恐怕就要问数学系的了。不过似乎这本来就是判断闰年的方法,这是许多参考书上都有的经典题目嘛!


Fox
2005-12-25 18:33
303770957
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:838
专家分:2125
注 册:2005-9-10
收藏
得分:0 
以下是引用yangke_uestc在2005-12-24 9:56:00的发言:

for(i=1;i<year;i++)
{if(i%400==0||i%100!=0&&i%4==0) weekday++; /*计算year年前闰年的个数*/
else continue;}
weekday=(year%7+weekday%7)%7; /*以1年1月1日是星期一来确定year年元旦的星期数*/
这一段算法的依据是什么?谢谢

这一段代码是先算出从1年1月1日到该年的元旦有多少天,然后将天数求除以7的余数,这中间考虑到天数过大可能超出范围,就先将year,weekday分别求7的余再加到一块再求7的余,总之就是为了确定是星期几!至于如何知道1年1月1日是星期一就要你事先去推算了,这个也很简单啊!


♂ 死后定当长眠,生前何须久睡。♀
2005-12-28 17:06
快速回复:小程序 我还是不会做,帮帮忙
数据加载中...
 
   



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

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