【结果填空】 (满分5分)
1949年的国庆节(10月1日)是星期六。
今年(2012)的国庆节是星期一。
那么,从建国到现在,有几次国庆节正好是星期日呢?
只要答案,不限手段!
可以用windows日历,windows计算器,Excel公式,。。。。。
当然,也可以编程!
不要求写出具体是哪些年,只要一个数目!
千万不要提交源代码!
答案不要写在这里,写在“解答.txt”中
有趣的题目,我就来有趣的搞一下
首先Linux下 date命令可以查看当前时间
$ date
Wed Feb 8 21:04:26 CST 2017
拿有没高级用法呢
$ man date
发现的
-d, --date=STRING
display time described by STRING, not 'now'
%x locale's date representation (e.g., 12/31/99)
试一下
$ date -d "10/01/1949"
Sat Oct 1 00:00:00 CST 1949
可以,很强
然后用System的命令
#include <bits/stdc++.h>
using namespace std;
int main()
{
for (int i = 1949; i <= 2012; i++) {
stringstream ss;
ss << i;
string s;
ss >> s;
string cmd = "date -d 10/01/" + s;
system(cmd.c_str());
}
}
得到输出
Sat Oct 1 00:00:00 CST 1949
Sun Oct 1 00:00:00 CST 1950
Mon Oct 1 00:00:00 CST 1951
Wed Oct 1 00:00:00 CST 1952
Thu Oct 1 00:00:00 CST 1953
Fri Oct 1 00:00:00 CST 1954
Sat Oct 1 00:00:00 CST 1955
Mon Oct 1 00:00:00 CST 1956
Tue Oct 1 00:00:00 CST 1957
Wed Oct 1 00:00:00 CST 1958
Thu Oct 1 00:00:00 CST 1959
Sat Oct 1 00:00:00 CST 1960
Sun Oct 1 00:00:00 CST 1961
Mon Oct 1 00:00:00 CST 1962
Tue Oct 1 00:00:00 CST 1963
Thu Oct 1 00:00:00 CST 1964
Fri Oct 1 00:00:00 CST 1965
Sat Oct 1 00:00:00 CST 1966
Sun Oct 1 00:00:00 CST 1967
Tue Oct 1 00:00:00 CST 1968
Wed Oct 1 00:00:00 CST 1969
Thu Oct 1 00:00:00 CST 1970
Fri Oct 1 00:00:00 CST 1971
Sun Oct 1 00:00:00 CST 1972
Mon Oct 1 00:00:00 CST 1973
Tue Oct 1 00:00:00 CST 1974
Wed Oct 1 00:00:00 CST 1975
Fri Oct 1 00:00:00 CST 1976
Sat Oct 1 00:00:00 CST 1977
Sun Oct 1 00:00:00 CST 1978
Mon Oct 1 00:00:00 CST 1979
Wed Oct 1 00:00:00 CST 1980
Thu Oct 1 00:00:00 CST 1981
Fri Oct 1 00:00:00 CST 1982
Sat Oct 1 00:00:00 CST 1983
Mon Oct 1 00:00:00 CST 1984
Tue Oct 1 00:00:00 CST 1985
Wed Oct 1 00:00:00 CST 1986
Thu Oct 1 00:00:00 CST 1987
Sat Oct 1 00:00:00 CST 1988
Sun Oct 1 00:00:00 CST 1989
Mon Oct 1 00:00:00 CST 1990
Tue Oct 1 00:00:00 CST 1991
Thu Oct 1 00:00:00 CST 1992
Fri Oct 1 00:00:00 CST 1993
Sat Oct 1 00:00:00 CST 1994
Sun Oct 1 00:00:00 CST 1995
Tue Oct 1 00:00:00 CST 1996
Wed Oct 1 00:00:00 CST 1997
Thu Oct 1 00:00:00 CST 1998
Fri Oct 1 00:00:00 CST 1999
Sun Oct 1 00:00:00 CST 2000
Mon Oct 1 00:00:00 CST 2001
Tue Oct 1 00:00:00 CST 2002
Wed Oct 1 00:00:00 CST 2003
Fri Oct 1 00:00:00 CST 2004
Sat Oct 1 00:00:00 CST 2005
Sun Oct 1 00:00:00 CST 2006
Mon Oct 1 00:00:00 CST 2007
Wed Oct 1 00:00:00 CST 2008
Thu Oct 1 00:00:00 CST 2009
Fri Oct 1 00:00:00 CST 2010
Sat Oct 1 00:00:00 CST 2011
Mon Oct 1 00:00:00 CST 2012
使用管道,将输出重定向到文本文件 cal
./Untitled1 > cal
现在处理cal就好了
#include <bits/stdc++.h>
using namespace std;
int main()
{
freopen("cal", "r", stdin);
string s;
int ans = 0;
while (cin >> s) ans += (s == "Sun");
cout << ans << endl;
}
答案 9
这种搞法Windwos肯定行不通的,到时候再议 : )