首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C语言函数,填补空缺。 [说明] 已知1900年1月1日是星期一,下面的函数count_5_13(int year)用于计算给定的年份year中有几个“黑色星期五”。“黑色星期五”指既是13日又是星期五的日期。 函数count_5
阅读以下说明和C语言函数,填补空缺。 [说明] 已知1900年1月1日是星期一,下面的函数count_5_13(int year)用于计算给定的年份year中有几个“黑色星期五”。“黑色星期五”指既是13日又是星期五的日期。 函数count_5
admin
2012-04-11
46
问题
阅读以下说明和C语言函数,填补空缺。
[说明]
已知1900年1月1日是星期一,下面的函数count_5_13(int year)用于计算给定的年份year中有几个“黑色星期五”。“黑色星期五”指既是13日又是星期五的日期。
函数count_5_13(int year)首先算出年份year的1月13日是星期几,然后依次计算每个月的13日是星期几,若是星期五,则计数。
程序中使用了函数isLeapYear(int year),其功能是判断给定年份是否为闰年,返回值为1(或0)分别表示year是(或不是)闰年。
[C语言函数]
int Count_5_13(int year)
{
int date; /*date为0表示星期日,为1~6分别表示星期一至星期六*/
long days=0; /*days记录天数*/
int m, y, c=0; /*c用于表示黑色星期五的个数*/
if(year<1900) return-1;
/*计算从1900年1月1日起,至给定年份year的1月13日间隔的天数*/
days=12;
for(y=1900; y<year; y++) {
days +=365;
if (iSLeapYear(Y)) ________ ;
}
date=((days%7)+1)%7;
/*算出给定年份year的1月13日是星期几+/
c=( ________ )?1:0;
for(m=1; ________ ; m++) {
switch(m) {
case 1: case 3: case 5: case 7: case 8: case 10: case 12:
days=31; break;
case 4: case 6: case 9: case 11:
days=30; break;
case 2: days=28;
if( ________ )days=29;
break;
}/*end of switch*/
date=((days%7)+ ________ )%7;
if (date==5) c++;
} /*end of for*/
return c;
}
选项
答案
days=days+1或其他等价形式 date==5或其他等价形式 m<12或其他等价形式 isLeapYear(year)或其他等价形式 date
解析
对于2月份,需要考虑所在年份是否为闰年,如果不是,则按365天计算,否则天数要加1,所以(1)处应为days=days+1或其他等价形式。程序中date变量表示的是星期几,如果是星期五(即date==5)则c取值为1,否则为0,所PA(2)处应为date==5。因为要考虑到每个月的13日是否为周五,所以要对其进行遍历,但是1月份之前己考虑过,所以就要考虑2到12月,那么m就应该从1到11,所以(3)处应为m<12或m<=11,或其他等价形式。同时也很容易得出(4)处是判断年份是否为闰年,因此需要调用相应的判断函数,即(4)处应为isLeapYear(year)或其他等价表示。通过之前的代码分析,不难得到(5)处为date。
转载请注明原文地址:https://kaotiyun.com/show/hEVZ777K
本试题收录于:
程序员上午基础知识考试题库软考初级分类
0
程序员上午基础知识考试
软考初级
相关试题推荐
两个进程争夺同一个资源(9)。
关于下列两行HTML代码,描述正确的是(43)。 <IMG onClick=over(this) title=放大 src="image.gif" alt="picture"> <a href="image.gif">picture</a>
存储一个16×16点阵的汉字(每个点占用1bit),需用(6)个字节。
某定点数字长n位,且最高位为符号位,小数点位于最低位的后面,则该机器数所能表示的最小值为(2)。
以下某段HTML程序在IE浏览器中的显示结果为(35)。 <html> <head><title> 络管理员考试首页</title><meta>网络管理员考试预测卷首页</meta></head> <body>考试预测卷一</body>
在Excel中,MAX(number1,number2,…)函数的作用是(16)。
帧中继网CHINAFRN的虚电路建立在(24),用户平面采用的协议是(25)。这种网络没有流量控制功能,但是增加了拥塞控制功能,如果沿着帧传送方向出现了拥塞,则把帧地址字段中的(26)位置1。这样接收方就可以通过(27)要求发送方降低数据传输速率。以下选项
计算机中存放当前指令地址的寄存器称为(14),在顺序执行程序时,当指令长度为32位,存储器按字节编址,每执行一条指令该寄存器自动加(15)。在数据传输过程中经常增加一位来检验传送的正确性,该位称为(16)位。
使用数据库的主要日的之一是为了解决数据的(18)问题。在通常情况下,(19)是属于一对一的联系。
X.25是CCITT关于分组交换网络的通信协议,其内容包括OSI参考模型(61);分组在X.25网中的传输方式,不含(62);两个X.25公用分组网之间互连时,采用的互连协议为(63);公用分组交换网的地址(编号)根据X.121建议编制,该地址中表示国别的
随机试题
故意犯罪形态的存在范围。
博来霉素天然存在的糖肽类抗生素为
下列各项中,哪项不增加心排血量
2014年4月1日,A公司与甲银行签订一份贷款合同,约定:贷款金额为人民币1000万元,借款期限为1年。当天,A公司将其价值800万元的一宗土地的建设用地使用权抵押给甲银行,签订了抵押合同并办理了抵押登记。同时,B公司担任此笔债务的保证人,与甲银行签订了保
某上市公司针对经常出现中小股东质询管理层的情况,拟采取措施协调所有者与经营者的矛盾。下列各项中,不能实现上述目的的是()。
根据《风景名胜区管理条例》的规定,在风景名胜区内采集标本、野生药材及其他林区产品()。
A、 B、 C、 D、 A
孙某丈夫外出做买卖五年未归,也没有任何音讯,孙某欲改嫁,下面说法正确的是()。
下列侵权责任中,不存在替代责任的是()。
IcametoIndiaayearagotofindavillageinwhichIcouldliveandwritebutitwasmanymonthsbeforeIsettleddownhappil
最新回复
(
0
)