首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序,使输入某年某月某日,可判断这一天是这一年的第几天。 程序分析:以3月5日为例,应该先把前两个月的天数加起来,然后再加上5天即本年的第几天(特殊情况:
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序,使输入某年某月某日,可判断这一天是这一年的第几天。 程序分析:以3月5日为例,应该先把前两个月的天数加起来,然后再加上5天即本年的第几天(特殊情况:
admin
2018-10-23
76
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序,使输入某年某月某日,可判断这一天是这一年的第几天。
程序分析:以3月5日为例,应该先把前两个月的天数加起来,然后再加上5天即本年的第几天(特殊情况:闰年输入月份大于3时需考虑多加一天)。
注意:只能补充函数func(int year,int month,int day),请勿改动其他部分的内容。
1 #include<iostream.h>
2 int func(int year,int month,int day)
3 {
4
5 }
6 void main()
7 {
8 cout<<func(2007,2,1)<<end1;
9 cout<<func(2007,i0,i0)<<end1;
10 cout<<func(2008,8,12)<<end1;
11 return;
12 }
选项
答案
1 int sum; 2 int leapyear; 3 switch(month)/*先计算某月以前月份的总天数*/ 4 { 5 case 1: 6 sum=0; 7 break; 8 case 2: 9 sum=31; 10 break; 11 case 3: 12 sum=59; 13 break; 14 case 4: 15 sum=90; 16 break; 17 case 5: 18 sum=120; 19 break; 20 case 6: 21 sum=151; 22 break; 23 case 7: 24 sum=181; 25 break; 26 case 8: 27 sum=212; 28 break; 29 case 9: 30 sum=243; 31 break; 32 case 10: 33 sum=273; 34 break; 35 case 11: 36 sum=304; 37 break; 38 case 12: 39 sum=334; 40 break; 41 default: 42 cout<<’’data error’’<<end1; 43 break; 44 } 45 sum=sum+day; 46 if(year%400==0 ||(year%4==0&& year%100!=0))/*判断是不是闰年*/ 47 leapyear=1; 48 else 49 leapyear=0; 50 if(1eapyear==1&&month>2) 51 sum++; 52 return sum;
解析
函数函数func(int year,int monm,int day返回某一天属于这一年的第几天,可以把该月之前的所有天数加起来再加上本月的第几天得到返回值,一种特殊情况需要注意,闰年时2月会多一天,这个时候可以先判断是否是闰年,如果是再看是不是二月以后,如果是则加在前面结果的基础上在加一天。
(1)为方便起见,先统计正常年份下,每个月的前面有多少天,可以用switch方式查询,然后再加上本月的日子,很快便得到了这一天是属于这一年的第几天。
(2)闰年的判断方法为:if(year%400==0||(year%4==0&&year%100!=0)),if语句为真则为闰年,二月之后的日期后需要加一天。
转载请注明原文地址:https://kaotiyun.com/show/dwAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有下列的程序:#include<cstring.h>#include<iostream.h>usingnamespacestd;classMyString{public:
下列有关重载函数的描述中,正确的是()。
下面程序的输出结果为【】。#include<iostream>usingnamespacestd;voidinitialize(intprintNo,intstate=0);voidinitialize(iht
下列数据结构中,属于非线性的是()。
在程序设计阶段应该采取______和逐步求精的方法,把一个模块的功能逐步分解,细化为一系列具体的步骤,继而用某种程序设计语言写成程序。
下列各类函数中,不是类的成员函数的是()。
设有基类定义:classCbase{private:inta;protected:intb;public:intc;};派生类采用何种继承方式可以使成员变量b成为自己的私有
需求分析阶段的任务是确定
在算法的4个特性中,算法必须能在执行有限个步骤之后终止指的算法的特性。
在软件测试设计中,软件测试的主要目的是
随机试题
较复杂的箱体零件切削加工主要技术要求有()。
创新
患儿,女性,7岁,上中切牙替换后中间有缝隙,原因不可能是
患者,男性,严重创伤后,血压下降,脉搏细速,面色苍白。治疗应重点注意
按《建筑抗震设计规范》(GB50011—2001),下列关于特征周期的叙述中,()是正确的。
项目在寿命期内各期实际发生的现金流入或流出序列以及它们的差(净现金流)。可概述这句话的是()。
我国目前编制固定资产投资价格指数所用的权重为()。
瑞典皇家科学院2014年2月13日宣布,一位华人科学家获得2014年度罗夫·肖克奖中的数学奖项,以奖励他在无穷多对孪生素数研究上取得的重大突破。这也是该奖项设立21年来首次颁给华裔学者。这位华人科学家是
Parentsofchildrenwhohappilyeatwhat’sputinfrontofthemmightassumetheirkidsarewellnourished.Buttwonewstudies
F
最新回复
(
0
)