首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C函数,填充函数中的空缺,将解答填入答题纸的对应栏内。 【说明】 函数GetDateld(DATE date)的功能是计算并返回指定合法日期date是其所在年份的第几天。例如,date表示2008年1月25日时,函数的返回值为
阅读以下说明和C函数,填充函数中的空缺,将解答填入答题纸的对应栏内。 【说明】 函数GetDateld(DATE date)的功能是计算并返回指定合法日期date是其所在年份的第几天。例如,date表示2008年1月25日时,函数的返回值为
admin
2013-07-03
47
问题
阅读以下说明和C函数,填充函数中的空缺,将解答填入答题纸的对应栏内。
【说明】
函数GetDateld(DATE date)的功能是计算并返回指定合法日期date是其所在年份的第几天。例如,date表示2008年1月25日时,函数的返回值为25,date表示2008年3月3日时,函数返回值为63。
函数Kday_Date(int theyear,int k)的功能是计算并返回指定合法年份theyear(theyear≥1900)的第k天(1≤k≤365)所对应的日期。例如,2008年的第60天是2008年2月29日,2009年的第60天是2009年3月
1日。
函数isLeapYear(int y)的功能是判断Y代表的年份是否为闰年,是则返回1,否则返回0。
DATE类型定义如下:
typedef struct{
int year,month,day;
}DATE;
【C函数1】
int GetDateId(DATE date)
{
Const int days_month[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int i,date_id=date.day;
for(i=0;i<
(1)
;i++)
date_id+=days_month
;
if(
(2)
&&isLeapYear(date.year))date_id++;
return date_id;
}
【C函数2】
(3)
Kday_Date(int theyear,int k)
{
int i;
DATE date;
int days_month[13]={0,31,28,31,30,31,30,31,31,30,31,30,31);
assert(k>=1&&k<=365&&theyear>=1900);/*不满足断言时程序终止*/
date.year=
(4)
;
if(isLeapYear(date.year))days_month[2]++;
for(i=1;;){
k=k—days_month[i++];
if(k<=0){date.day=k+
(5)
;date.month=i一1;break;}
}
return date;
}
选项
答案
(1)date.month (2)date.month>2或其等价形式 (3)DATE (4)theyear (5)days_month[i—1]或其等价形式
解析
本题考查的知识点是填写程序,本题的程序的功能是计算出某个日期为该年的第几天和某年的第几天是该年的几月几号。函数1是填写(GetDateId这个函数,其中的for循环函数的功能是计算该日期是该年的第几天,所以(1)应填date.month,但是是在普通年份下计算的,接下来的if条件语句是判断该年份是否为闰年,若为闰年且超过2月份,则需要在原来的基础上再加一天,若不是闰年或者没超过2月份则不用加一天,所以(2)应填date.month>2。函数2是某年的第k天对应的日期,首先要定义下Kday_Date函数,该函数符合DATE类型,所以用DATE定义该函数,(3)应填DATE,(4)是将date.year赋值为theyear,所以应该填theyear,接下来k=k—days_month[i++]是计算日期,如果k>0,则k=k—days_month[i++],若k<=0,则date.day=days_month[i一1],故(5)应该填days_month[i一1]。
转载请注明原文地址:https://www.kaotiyun.com/show/NnjZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
在Excel2007中,在单元格A1中输入函数“=LEN(”信息处理技术员”)”,按回车键后,则A1单元格中的值为__________。
在Excel2007中,在单元格A1中输入函数“=POWER(2,3)/MAX(1,2,4)”,按回车键后,则A1单元格中的值为__________。
在Word2007中,若用户需要将一篇文章中的字符串“Internet”全部替换为字符串“因特网”,则可以在编辑菜单中选择()命令。
某互联网公司建立的用户画像(标签化的用户信息)包括人口属性和行为特征两大类,()属于行为特征。
在Windows XP中,文件名中不允许出现的字符是(32)。
______不属于企业信息系统存在的问题。
在Excel的A1单元格中输入函数“=IF(12,1,2)”,按回车键后,A1单元格中的值为()。
在Windows7运行时,为强行终止某个正在持续运行且没有互动反应的应用程序,可按组合键Ctrl+Alt十Del启动(24)________________,选择指定的进程和应用程序,结束其任务。
综合布线系统由6个子系统组成,将图1-1中(1)~(6)处空缺子系统的名称填写在答题纸对应的解答栏内。制作交叉双绞线(一端按EIA/TIA568A线序,另一端按EIA/TIA568B线序)时,其中一端的线序如图1-2(a)所示,另一端线序如图1—2
从以下备选答案中为程序中(1)~(5)处空缺内容选择正确答案,填入答题纸对应的解答栏内。(1)A.CreatObject()B.connect0C.go()D.open()(2)A."select*fromdata"B."select
随机试题
关于急性肾小球肾炎饮食治疗,不正确的是
洗钱罪的犯罪对象是下列哪些犯罪的违法所得及其产生的收益:
管理是由多个环节组成的过程,其中首要的环节是( )。
会计职业道德教育形式中的自我教育是会计人员()的行为活动。
客户的还款能力主要取决于()。
幼儿园应制定合理的幼儿一日生活作息制度,两餐间隔时间不得少于()。
当代中国坚持“发展是硬道理”的本质要求就是坚持()。
两个数相除商9余4,如果被除数、除数都扩大到原来的3倍。那么被除数、除数、商、余数之和等于2583。原来的被除数和除数各是多少?
把下面的六个图形分为两类,使每一类图形都有各自的共同特征或规律,分类正确的一项是:
A、Moved.B、Annoyed.C、Delighted.D、Discouraged.C选项均为表示态度的词表明,本题可能考查人们对某事或某物的态度。短文中提到Mostpeoplewillbepleasedbytheefforty
最新回复
(
0
)