using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace ConsoleApplication8
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("*******");
Console.Write("\n year");
int year = int.Parse(Console.ReadLine());
Console.Write("\n month");
int month = int.Parse(Console.ReadLine());
int days = 0;
Boolean isRn;
if ( (year %4 == 0 && year%100 != 0) || (year%400 == 0))
{
isRn = true;
}
else { isRn = false; }
int totaldays = 0;
for (int i = 1900; i <year; i++)
{
if (year % 4 == 0 && !(year % 100 == 0) || year % 400 == 0)
{
totaldays = totaldays + 366; }
else { totaldays = totaldays + 365; }
}
int beforedays = 0;
for (int i = 1; i <= month; i++) {
switch (i){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
days=31;
break;
case 2:
if(isRn)
{
days=29;
}
else {days=28;}
break;
default:
days=30;
break;
}
if (i < month) {
beforedays = beforedays + days;
}
}
totaldays = totaldays + beforedays;
int firsdayofmonth; //存储当月第一天是星期几,周日是0,周一到周六1-6
int temp = 1+totaldays % 7; if (temp == 7)
{
firsdayofmonth = 0;
}
else { firsdayofmonth = temp; } Console.WriteLine("星期日\t星期一\t星期二\t星期3\t星期4\t星期5\t星期6");
for (int nullno = 0; nullno < firsdayofmonth; nullno++) { Console.Write("\t");
}
for (int i = 1; i <= days; i++) {
Console.Write(i + "\t");
if ((totaldays + i -1) % 7 == 5) //当天为周六换行输出
{ Console.WriteLine();
} }
}
}
}
解决方案 »
- <authorization>的问题
- 编写了一个SQLSERVER用户定义函数,如何将这个函数应用到任何一个数据库中。也就是如何存放这个用户定义函数,使得能够用到该函数的数据库都能很方便的调用它。
- MDI问题
- 怎样获取字符串中真实字节的数目
- 用datagrid删除记录时出现的索引问题,请各位大侠指点一下,先谢了。
- panel中有类似lable.text的属性吗?
- 问一下,可不可以对XML的某个结点内的内容,做修改.
- Novell.MonoDroid.Common.targets(821,3): error MSB6006: “java”已退出,代码为 1。
- c# 获取和修改系统下载路径?
- web问题!!!
- SqlConnection 超时设置不起作用connection.Open()还是一样/判断本机是否可以连接远程SQL数据呢
- 求一则正则表达式,筛选出前面是为<br>或者为没有任何字符
为什么这样写看不懂。
int year = int.Parse(Console.ReadLine());
Console.Write("\n month");
int month = int.Parse(Console.ReadLine());
不是数字字符能转为int ?所以for只一次1900
Console.Write("\n year");
int year = int.Parse(Console.ReadLine());
Console.Write("\n month");
int month = int.Parse(Console.ReadLine()); var dateTime = new DateTime(year, month, 1);
Console.WriteLine("星期日\t星期一\t星期二\t星期三\t星期四\t星期五\t星期六");
var week = (int)dateTime.DayOfWeek;
for (int nullno = 0; nullno < week; nullno++)
{
Console.Write("\t");
}
for (int i = week; i < (dateTime.AddMonths(1)-dateTime).Days+week; i++)
{
Console.Write((i-week+1) + "\t");
if ( i% 7 == 6)
{
Console.WriteLine();
}
}
static void Main(string[] args)
{
Console.WriteLine("*******");
Console.Write("\n year");
int year = int.Parse(Console.ReadLine());
Console.Write("\n month");
int month = int.Parse(Console.ReadLine()); DateTime dt = new DateTime(year, month, 1); int firsdayofmonth; //存储当月第一天是星期几,周日是0,周一到周六1-6
firsdayofmonth = (int)dt.DayOfWeek; int days = (dt.AddMonths(1) - dt).Days; Console.WriteLine("星期日\t星期一\t星期二\t星期3\t星期4\t星期5\t星期6"); for (int nullno = 0; nullno < firsdayofmonth; nullno++)
{
Console.Write("\t");
}
for (int i = 1; i <= days; i++)
{
Console.Write(i + "\t");
if (i % 7 == 5) //当天为周六换行输出
{
Console.WriteLine();
}
}
}
firsdayofmonth = (int)dt.DayOfWeek; // 这个月第一天是星期几?
int days = (dt.AddMonths(1) - dt).Days; //解释下。
这个月的第一天firsdayofmonth = (int)dt.DayOfWeek;
这天是星期几int days = (dt.AddMonths(1) - dt).Days;
这个月一共有多少天
var dateTime = new DateTime(year, month, 1);
for (int i = week; i < (dateTime.AddMonths(1)-dateTime).Days+week; i++)
{
Console.Write((i-week+1) + "\t");
if ( i% 7 == 6)
{
Console.WriteLine();
}
}
for (int i = 1; i <= days; i++)
{
Console.Write(i + "\t");
if ((i + firsdayofmonth - 1) % 7 == 6) //当天为周六换行输出
{
Console.WriteLine();
}
}
int days = (dt.AddMonths(1) - dt).Days; (dt.AddMonths(1) - dt).Days;看的不太懂。麻烦说下,谢谢!
这个月一共有多少天