首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序,使输入某年某月某日,可判断这一天是这一年的第几天。 程序分析:以3月5日为例,应该先把前两个月的天数加起来,然后再加上5天即本年的第几天(特殊情况:闰年输入
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序,使输入某年某月某日,可判断这一天是这一年的第几天。 程序分析:以3月5日为例,应该先把前两个月的天数加起来,然后再加上5天即本年的第几天(特殊情况:闰年输入
admin
2016-10-28
72
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序,使输入某年某月某日,可判断这一天是这一年的第几天。
程序分析:以3月5日为例,应该先把前两个月的天数加起来,然后再加上5天即本年的第几天(特殊情况:闰年输入月份大于3时需考虑多加一天)。
注意:只能补充函数func(int year,int month,int day),请勿改动其他部分的内容。
#include<iostream.h>
int func(int year,int month,int day)
{
}
void main()
{
cout<<func(2007,2,1)<<endl;
cout<<func(2007,i0,i0)<<endl;
cout<<func(2008,8,12)<<endl;
return;
}
选项
答案
int sum; int leapyear; switch(month)/*先计算某月以前月份的总天数*/ { case1; sum=0; break; case2: sum=31; break; case3: sum=59; break; case4: sum=90; break; case5: sum=120; break; case6: sum=151; break; case7: sum=181; break; case8: sum=212; break; case9: sum=243; break; case10: sum=273; break; case11: sum=304; break; case12: sum=334; break; defalllt: cout<<"data error"<<endl; break; } sum=sum+day; if(year%400==0||(year%4==0&&year%100!=0))/*判断是不是闰年*/ leapyear=1; else leapyear=0; if(1eapyear==l&&month>2) sum++; return sum;
解析
(1)为方便起见,先统计正常年份下,每个月的前面有多少天,可以用switch方式查询,然后再加上本月的日子,很快便得到了这一天是属于这一年的第几天。
(2)闰年的判断方法为:if(year%400==0||(year%4==0&&year%100!=0)),if语句为真则为闰年,二月之后的日期后需要加一天。
转载请注明原文地址:https://kaotiyun.com/show/gKNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
以下程序的执行结果是______。#include<iostream.h>classbase{public:virtualvoidwho(){cout<<"basec
分布式数据库系统不具有的特点是
fun()函数的功能是:首先对a所指的N行N列的矩阵,找出各行中的最大的数,再求这N个最大值中的最小的那个数作为函数返回值。请填空完成此程序。#defineN100intfun(int(*A)[N]){in
下列叙述中正确的是
下面程序的预设功能是:将文本文件readme中的内容读出,显示在屏幕上。#include<fstream>usingnamespacestd;intmain(){charbuf[80];
设有二维数组A[0..9,0..19],其每个元素占两个字节,第一个元素的存储地址为100,若按行优先顺序存储,则元素A[6,6]的存储地址为,【】。
以下程序的执行结果为()。#include<iostream.h>classmyClass{Dublic:myClass(intdata);myClass(){value=0;
为完成下面的程序,应在划线处填入的语句是()。#include<iostream>usingnamespacestd;classBase{private:intx;p
以下各选项组中,均是C++语言关键字的组是
通过使用new和delete两个运算符进行的分配为【】存储分配。
随机试题
生态圈包括全球所有的生物及其所有的自然环境。
A.Miles手术B.Dixon手术C.BA,Con手术D.Hartmann手术肛管癌选用
上行头目,中开郁结,下调经水的药物是
《中华人民共和国防沙治沙法》所称土地沙化,是指主要因()所导致的天然沙漠扩张和沙质土壤上植被及覆盖物被破坏,形成流沙及沙土裸露的过程。
下列措施中,能够有效治理通货膨胀的有( )。
对于楼面地价与土地单价之间的关系,下列说法中正确的是()。
下列关于项目建设配套条件评估,说法正确的有()。
下列说法正确的是()。
在人类社会的发展史上,经历了三次科技革命,其标志为()。
INIMICAL:
最新回复
(
0
)