首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和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
55
问题
阅读以下说明和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
程序员上午基础知识考试
软考初级
相关试题推荐
ICMP不包括(22)功能。
在RMON Ⅱ功能组中,(64)基于IP地址来记录主机对之间通信情况。
在进行消息认证时,经常利用安全单向散列函数产生消息摘要。安全单向散列函数不需要具有(47)特性。
HTML语言中,(41)为表单标记。
某定点数字长n位,且最高位为符号位,小数点位于最低位的后面,则该机器数所能表示的最小值为(2)。
在Windows操作系统中,如果要暂停一个ping会话过程,正确的操作是(66)。
以下某段HTML程序在IE浏览器中的显示结果为(35)。 <html> <head><title> 络管理员考试首页</title><meta>网络管理员考试预测卷首页</meta></head> <body>考试预测卷一</body>
假设某计算机有1MB的内存,并按字节编址,为了能存取其中的内容,其地址寄存器至少需要(9)位。为使4字节组成的字能从存储器中一次读出,要求存放在存储器中的字边界对齐,一个字的地址码应(10)。若存储周期为200ns,且每个周期访问4B,则该存储器的带宽为(
使用数据库的主要日的之一是为了解决数据的(18)问题。在通常情况下,(19)是属于一对一的联系。
选择网卡的主要依据是组网的拓扑结构、网络连线的最大长度、结点之间的距离和(38)。
随机试题
患者,男,50岁。肝硬化腹水,腹大坚满,脘闷纳呆,大便溏,小便不利,舌苔白腻,脉弦缓。其治法是
合同人员的主要职责是()。
漓江的主要景点可概括为“一江、两洞、三山”,其中的“三山”不包括下列的()。
“磨洋工”是一种()现象。
目前企业信息化系统所使用的数据库管理系统的结构,大多数为()。
某企业截至评估基准日,经核实后的应收账款余额为124万元,该企业前5年的应收账款累计余额为6300000元,处理坏账累计额为261450元,按坏账估计法确定该企业应收账款的评估值为()元。
关于IPv6的说法中,不正确的是(30)。
A、出差时间早B、出差回不来C、出差时间短D、去的时间长D“早回来不了”的意思是不能早回来,可见出差的时间长,即去的时间长,选择D。
Readcarefullythefollowingexcerpt,andthenwriteyourresponseinNOLESSTHAN200words,inwhichyoushould:-summariz
It’shightimewe(take)______propermeasurestocleanourair.
最新回复
(
0
)