问题 实验题

图a螺旋测微器的读数为        mm;图b游标卡尺的读数为        mm.

答案

3.699mm-3.701mm、6.2mm

题目分析:螺旋测微器的固定刻度读数为3.5mm,可动刻度读数为0.01×20.0mm=0.200mm,所以最终读数为3.700mm.游标卡尺的固定刻度读数为6mm,游标读数为0.1×2mm=0.2mm,所以最终读数为6.2mm.

填空题

使用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了用于表示日期的类Date,但类Date的定义并不完整,按要求完成下列操作,将类的定义补充完整。
(1)定义私有成员变量year、month、day,分别表示年、月、日,类型为int。请在注释1后添加适当的语句。
(2)完成构造函数,分别给year、month、day赋值,请在注释2后添加适当的语句。
(3)完成重载符号“+=”的定义,请在注释3后添加适当的语句。
(4)完成print打印函数,输出到屏幕和文件的格式相同,请在注释4后添加适当的语句。
注意:仅在函数指定位置添加语句,请勿改动主函数main与其他函数中的任何内容。
程序正常运行,输出的结果为2008年11月8日。
试题程序:
#include<iostream.h>
#include<fstream>
#include<iomanip>
#include<cmath>
using namespace std;
void WriteFile(int c)

ofstream out1;
out1.open("3.txt",ios_base::app);
out1<<c<<’’;
out1.close();

void WriteFile(char *str)

ofstream out1;
out1.open("3.txt",ios_base::app);
out1<<str;
out1.close();

void ClearFile()

ofstream out1;
out1.open("3.txt");
out1.close();

class Date

public:
Date(int y,int m,int d)

//********1********

void print();
//********2********

month+=m;
int i=month/12;
int j=month%12;
if(j==0)
year+=(i-1);
month=12;

else

year+=i;
month=j;

return *this;

private:
//********3********

void Date::print()

//********4********
WriteFiIe(year);
writeFile("年");
WriteFile(month);
WriteFile("月");
WriteFile(day);
WriteFile("日");

int main()

ClearFile();
Date Oly_day(2008,8,8);
Oly_day+=3;
Oly_day.print();
return 0;

单项选择题