Oracle认证考试

如何显示今天是星期几(周一到周日,分别用1~7表示)()A、select to_char(sysdate,'D') from dual;B、select to_char(sysdate,'W') from dual;C、select to_char(sysdate,'D')-1 from dual;D、select to_char(sysdate-1,'D') from dual;E、select to_char(sysdate-1,'W') from dual;

题目

如何显示今天是星期几(周一到周日,分别用1~7表示)()

  • A、select to_char(sysdate,'D') from dual;
  • B、select to_char(sysdate,'W') from dual;
  • C、select to_char(sysdate,'D')-1 from dual;
  • D、select to_char(sysdate-1,'D') from dual;
  • E、select to_char(sysdate-1,'W') from dual;
如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

阅读以下说明和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或其他等价形式 m12或其他等价形式 isLeapYear(year)或其他等价形式 date
days=days+1或其他等价形式 date==5或其他等价形式 m12或其他等价形式 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)处应为m12或m=11,或其他等价形式。同时也很容易得出(4)处是判断年份是否为闰年,因此需要调用相应的判断函数,即(4)处应为isLeapYear(year)或其他等价表示。通过之前的代码分析,不难得到(5)处为date。

第2题:

200371日是星期二,那么201171日是星期几?

A、星期四 B、星期五 C、星期六 D、星期日


一年是365天 有五十二周 余一天 
2004、2008是闰年,有363天 
所以2003-2011共余10天
所以2011年7月1日是星期五

第3题:

–____________________? –It’s Sunday.

(A) What time is it?

(B) When is it?

(C) What’s the date today?

(D) What day is today?

正确答案:D

解答参考:D 本题考查 “今天是星期几”的问法,


正确答案:D 
解答参考:D 本题考查 “今天是星期几”的问法,正确答案D。  

第4题:

2012年7月11日是星期三,那么2015年7月11日是星期几?( )

A.星期四
B.星期五
C.星期六
D.星期日

答案:C
解析:
因为平年共有365天,365÷7 = 52…1,所以提问“365天之后是星期几”就等同于“1天之后是星期几”,由此可知2012年一2015年共3年,可记作3天,因此星期三的后三天就是星期六,选C。

第5题:

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

}


正确答案:(1)days++days+=1days=days+1或其等价表示 (2)date==5或其等价表示 (3)m12或其等价表示 (4)isLeapYear(year)或year%4==0 && year%100!=0||year%400==0或其等价表示 (5)date
(1)days++,days+=1,days=days+1,或其等价表示 (2)date==5,或其等价表示 (3)m12,或其等价表示 (4)isLeapYear(year),或year%4==0 && year%100!=0||year%400==0,或其等价表示 (5)date 解析:本题考查基本程序设计能力。
题中程序用于计算给定年份中“黑色星期五”(既是13日又是星期五的日期)的数目。基本的常识为平年每年365天、闰年366天。若今天是星期三(date),则7天后的那天也是星期三,依此类推,可算出m天后为星期几((date+m)%7,为0表示星期日)。
题目中给出了1900年1月1日是星期一,因此,对于给定的日期,首先需要算出其距离1900.1.1的天数,然后用上式计算该日期对应星期几。
要计算给定年份中有几个“黑色星期五”,可先计算出该年份的1月13日是星期几,然后计算该年内每月的13日是星期几。所以,程序中首先计算出1900年1月1日至给定年份的1月13日共有多少天(days)。
在计算给定日期段的天数时,需要考虑大、小月,对于2月份,则需要考虑当前年号是否为闰年。期间若跨年度,则按每年365天(闰年366天)累加天数。对于以下代码段:
for(y == 1900;y year;y++){
days+=365;
if(isLeapYear(y))(1);
}
显然,程序中空(1)处应填入days++或其等价表示形式。
根据程序中的注释,经语句date=((days%7)+1)%7;处理后,date表示给定年份的1月13日是星期几,而c用于表示“黑色星期五”的个数,因此空(2)处应填入 date==5。
在下面的代码中,计算给定年份2月份之后每个月的13日星期几(计算天数时需要考虑大、小月,2月份要考虑是否为闰年),其中m表示月号。
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:case6:case9:case11:
days=30;break;
case 2:days=28;
if((4))days=29;
break;
}/*end of switch*/
由于1月13日已经考虑过,因此需要考虑的日期为2月至12月的每个13日,当月份m为12时,再计算出的日期就是下一年度的1月13日了,因此空(3)处应填入 m12,空(4)处显然是判断当前年号是否为闰年,因此应填入isLeapYear(year)或 isLeapYear(y)。
对于代码date=((days%7)+(5)%7;,之前已用date表示上个月13日是星期几,days表示间隔的天数,因此空(5)处应填入date。

第6题:

今天是星期几? 汉译英


参考答案:What day is it today?

第7题:

一群孩子在争论今天是星期几。甲说:今天不是星期日;乙说:今天是星期五;丙说:前天是星期六;丁说:昨天是星期二;戊说:今天是星期二;己说:今天不是星期一,也不是星期二,更不是星期三。事实上他们中只有一人讲对了。问今天是星期几?( )

A.星期二

B.星期四

C.星期六

D.星期日


正确答案:D

第8题:

:今天是星期三,问再过72天是星期几?( )。

A.三

B.四

C.五

D.六


正确答案:C
本题考查的是星期问题。这类题的算法是:天数÷7的余数+当天的星期数,即72÷7—10余2,2+3=5,即再过72天刚好是星期五。故本题的正确答案为C。

第9题:

试题二(共 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;

}


正确答案:


第10题:

小明在星期一、星期二、星期三说谎话,丽丽在星期四、星期五、星期六说谎话;此外的日子里,他们都讲真话,青青忘了今天是星期几,他问小明,小明说:“昨天是我说谎话的日子。”她又问丽丽,丽丽也说:“昨天是我说谎话的日子。”由此可以推断今天是()

A. 星期一
B. 星期四
C. 星期六
D. 星期天

答案:B
解析:
运用假设法。假设惊天是周一,小明说假话夏利说真话,那么昨天是周日,小明和小丽都应该说真话,因此小明应该说“昨天我活的是假话”而小丽应该说“昨天我说的是真话”,与题干中的话矛盾,故今天不是周一;同理可以推出今天不是星期六和星期日,将星期四代入,小明说真话,小丽说假话,昨天是周三,小明说假话,小丽桌真话,那么小明应该说“昨天我说假话”,小丽由于今天说假话,也应该说“我昨天说假话”、故答案为B。

更多相关问题