首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序,使输入某年某月某日,可判断这一天是这一年的第几天。 程序分析:以3月5日为例,应该先把前两个月的天数加起来,然后再加上5天即本年的第几天(特殊情况:
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序,使输入某年某月某日,可判断这一天是这一年的第几天。 程序分析:以3月5日为例,应该先把前两个月的天数加起来,然后再加上5天即本年的第几天(特殊情况:
admin
2018-10-23
64
问题
使用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"iostream.h"①voidmain()②{③intA=0;④int&B;⑤B=A;⑥cout<<B;⑦
以下定义数组中错误的是
下列程序的输出结果是()。#include<iostream>usingnamespacestd;intmain(){chara[]="Hello,Test";char
虚基类说明格式如下:slass派生类名【】<继承方式><基类名>。
友元类的所有成员函数都是另一个类的【】函数。
数据库系统中实现各种数据管理功能的核心软件是______。
若有如下程序:#include<iostream>usingnamespacestd;classTestClass{public:voidwho(){cout<<"TestClass"<<endl;
若类A和类B的定义如下:#include<malloc.h>classA{inti,j;public:intgeti(){returni;}};classB:
在一个容量为25的循环队列中,若头指针front=15,尾指针rear=6,则该循环队列中共有______个元素。
软件开发环境是全面支持软件开发全过程的______集合。
随机试题
在一般过滤操作中,起到主要介质作用的是过滤介质本身。()
市场经济中要提倡“以义治商”和“以义取利”,这里的“义”指的是()
增加肠道氨排出的药物是
主治与痰无关的方剂为
()为国家选定的非国际单位制单位。
确立科技创新发展新蓝图,创新创业生态更加优化,公民具备科学素质的比例超过()。
道德规范是人们为了社会稳定和发展所必须遵守的()。
_____________是国家的本质,政体是国家的形式。同一种_____________的国家,可能采取不同的政体。例如,同样是资产阶级专政的国家,有的实行民主共和制,有的实行君主立宪制,还有的曾经采取过法西斯制。不同____________的国家,又可
The______issellinggoodsintheshop.
WhenDonaldarrivedforhisfirstgroup-therapysessionhewasinawheelchair,sufferingfrommalignantmelanomaandseverelyd
最新回复
(
0
)