阅读以下说明和C函数,填充函数中的空缺,将解答填入答题纸的对应栏内。【说明】函数GetDateId(DATEdate)的功能是计算并返回指定合法日期date是其所在年份的第几天。例如,date表示2008年1月25日时,函数的返回值为25,date表示2008年3月3日时,函数返回值为63。函数Kday—Date(inttheyear,intk)的功能是计算并返回指定合法年份theyear(theyear≥1900)的第k天(1≤k≤365)所对应的日期。例如,2008年的第60天是2008年2月29日,2009年的第60天是2009年3月1日。函数isLeapYear(inty)的功能是判断y代表的年份是否为闰年,是则返回1,否则返回0。DATE类型定义如下:

阅读以下说明和C函数,填充函数中的空缺,将解答填入答题纸的对应栏内。【说明】函数GetDateId(DATEdate)的功能是计算并返回指定合法日期date是其所在年份的第几天。例如,date表示2008年1月25日时,函数的返回值为25,date表示2008年3月3日时,函数返回值为63。函数Kday—Date(inttheyear,intk)的功能是计算并返回指定合法年份theyear(theyear≥1900)的第k天(1≤k≤365)所对应的日期。例如,2008年的第60天是2008年2月29日,2009年的第60天是2009年3月1日。函数isLeapYear(inty)的功能是判断y代表的年份是否为闰年,是则返回1,否则返回0。DATE类型定义如下:



参考解析

解析:(1)date.month(2)date.month>2或其等价形式(3)DATE(4)theyear(5)days_month[i-1]或其等价形式
【解析】

函数GetDateId(DATE date)的功能是计算并返回指定合法日期date是其所在年份的第几天。处理思路是:先将1月~date.month-l月的天数累加起来,然后加上date.month的天数date.day即可。若date.month>2,则需要考虑特殊情况2月份,在闰年为29天而不是28天。因此,空(1)处应填入date.month,空(2)处应填入date.month>2。函数Kday_Date(int theyear,int k)的功能是计算并返回指定合法年份theyear (theyear≥1900)的第k天(1≤k≤365)所对应的日期。根据说明,显然空(3)应填入“DATE”。当k<32时,计算出的日期一定在1月份;当k大于31而小于60(闰年时为61)时,计算出的日期一定在2月份;以此类推。函数中的处理思路是:先将k的值减去1月份的天数,若仍大于0,则继续减去2月份的天数,以此类推,直到k的值小于或等于0。此时将多减去的最后1个月的天数加上即可。因此,空(4)应填入“theyear”,空(5)应填入“days_month[i]”。

相关考题:

在下列函数中,函数返回值为数值的是 ______.A.BOF()B.CTOD('01/01/96')C.AT('人民中华人民共和国')D.SUBSTRDTOC(DATE0)

返回指定日期"日"部分的函数是( )A.Date()B.Day()C.Year()D.Month()

阅读以下说明和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;}

date函数的第三参数表示哪一项()。 A、季度B、年份C、月份D、日期

将关键字const写在函数头之后,函数体之前,说明该函数是一个const成员函数。此时const不是指定函数的返回值,而是修饰______指针。

阅读以下说明和C语言函数,将应填入(n)处。【说明】已知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))(1);}date=((days%7) +1) %7; /*算出给定年份year的1月13日是星期几*/c=((2)) ?1:0;for(m=1;(3);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((4)) days=29;break;}/*end of switch*/date=((days%7)+ (5) )%7;if (date==5) c++;} /*end of for*/return c;}

下列函数中,其返回值为字符型数据的函数是______。A.LEN()B.VAL()C.STR()D.DATE()

阅读以下说明和 C 函数,填补函数代码中的空缺,将解答填入答题纸的对应栏内。 【说明 1】 函数 f(double eps) 的功能是:利用公式计算并返回 的近似值。【说明 2】 函数fun(char *str)的功能是:自左至右顺序取出非空字符串 str中的数字字符,形成一个十进制整数(最多 8 位)。例如,若 str中的字符串为 iyt?67kp f3g8d5.j4ia2e3p12, 则函数返回值为 67385423。

请教:2012年3月全国计算机等级《二级C语言》模拟试题(1)第2大题第8小题如何解答?【题目描述】有关return语句说法不正确的是(  )A)系统默认的返回值类型为整型,故当函数的返回值为int型时,在函数定义时,返回值的类型说明可以省略B)当函数有返回值时,凡是允许表达式出现的地方,都可以调用该函数C)当函数没有返回值时,函数的返回值类型可以说明为void型,它表示无类型或空类型D)函数的返回值类型必须与return语句中的表达式值的类型一致,但c语言也允许不同;这时,系统以函数定义时的返回值类型说明为准,并自动地将return语句中表达式的值转换为函数的返回值类型

试题二(共 15 分)阅读以下说明和 C 语言函数,将应填入 (n) 处的字句写在答题纸的对应栏内。[说明]已知 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)) (1) ;}date = ((days % 7) + 1) % 7; /* 算出给定年份year 的1 月 13 日是星期几 */c = ( (2) ) ? 1 : 0;for(m = 1; (3) ; 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 ( (4) ) days = 29;break;}/* end of switch*/date =((days % 7) + (5) ) % 7;if (date == 5) c++;} /* end of for*/return c;}

有关return语句说法不正确的是( )A)系统默认的返回值类型为整型,故当函数的返回值为int型时,在函数定义时,返回值的类型说明可以省略B)当函数有返回值时,凡是允许表达式出现的地方,都可以调用该函数C)当函数没有返回值时,函数的返回值类型可以说明为void型,它表示“无类型”或“空类型”D)函数的返回值类型必须与return语句中的表达式值的类型一致,但c语言也允许不同;这时,系统以函数定义时的返回值类型说明为准,并自动地将return语句中表达式的值转换为函数的返回值类型

阅读以下说明和C函数,填补函数代码中的空缺,将解答填入答题纸的对应栏内。[说明1]函数f(double eps)的功能是:利用公式计算并返回π的近似值。[C函数1] double f(doubleeps) { double n=1.0, s=1.0, term=1.0, pi=0.0; while ( fabs(term) >=eps ){ pi=pi+term; n= ______; s= ______; term=s/n; } return pi*4; }[说明2]函数fun(char *str)的功能是:自左至右顺序取出非空字符串str中的数字字符,形成一个十进制整数(最多8位)。例如,若str中的字符串为"iyt?67kp f3g8d5.j4ia2e3p12",则函数返回值为67385423。[C函数2] long fun(char*str) { int i=0; long num: 0; char *p = str; while ( i<8 ++i; } ______; } return num; }

程序中对fun函数有如下说明void*fun();此说明的含义是()A、fun函数无返回值B、fun函数的返回值可以是任意的数据类型C、fun函数的返回值是无值型的指针类型D、指针fun指向一个函数,该函数无返回值

函数LEN(DTOC(DATE(),1))的返回值是()A、4B、6C、8D、10

函数运算YEAR(date( ))返回值的类型是()A、逻辑型B、字符型C、备注型D、数值型

函数DATE()可以返回当前的日期及时间。

函数year(date())的返回值是()A、是错误的B、是个日期/时间型的值C、是系统当前日期的年份D、都不对

下列关于ORACLE的to_date函数和to_char函数,描述正确的是()。A、to_char函数是将字符串数据转换为日期数据B、to_date函数是将字符串数据转换为日期数据C、to_char函数是将日期数据转换为字符数据D、to_date函数是将日期数据转换为字符数

以下的四组函数,返回值的数据类型是一致的为()。A、DTOC(DATE()),DATE(),YEAR(DATE())B、ALLTRIM("VFP6.0"),ASC("A"),SPACE(8)C、EOF(),RECCOUNT(),DBC()D、STR(3.14,3,1),DTOC(DATE()),SUBSTR("ABCD",3,1)

下列函数中,返回值为日期型的有()A、DATE()B、TIME()C、DTOC()D、CTOD()E、YEAR()

以下的四组函数,返回值的数据类型是一致的()A、DTOC(DATE()),DATE(),YEAR(DATE())B、ALLTRIM("VFP5.0"),ASC("A"),SPACE(8)C、EOF(),RECCOUNT(),DBC()D、STR(3.14,3,1),DTOC(DATE()),SUBSTR("ABCD",3,1)

下列函数中返回值为字符型的是()。A、DATE()B、TIME()C、YEAR()D、DATETIME()

函数LEN(STR(12345678901))的返回值是();函数LEN(DTOC(DATE()))的返回值为()。

关于日期和时间函数,下列说法正确的是()。A、now函数可以返回客户端计算机当前的日期和时间值。B、表达式Weekday(Date),将得到表示当前日期是星期几的英文字符,如星期日为“Friday”。C、Timer函数返回午夜12时以后已经过去的小时数。D、表达式DateAdd("d",10,Date),是表示当前日期的十天后。

单选题以下的四组函数,返回值的数据类型是一致的()ADTOC(DATE()),DATE(),YEAR(DATE())BALLTRIM(VFP5.0),ASC(A),SPACE(8)CEOF(),RECCOUNT(),DBC()DSTR(3.14,3,1),DTOC(DATE()),SUBSTR(ABCD,3,1)

单选题以下的四组函数,返回值的数据类型是一致的为()。ADTOC(DATE()),DATE(),YEAR(DATE())BALLTRIM(VFP6.0),ASC(A),SPACE(8)CEOF(),RECCOUNT(),DBC()DSTR(3.14,3,1),DTOC(DATE()),SUBSTR(ABCD,3,1)

填空题函数LEN(STR(12345678901))的返回值是();函数LEN(DTOC(DATE()))的返回值为()。