问题 单项选择题

以下关于结构化程序设计的叙述中正确的是______。

A.一个结构化程序必须同时由顺序、分支、循环三种结构组成
B.结构化程序使用goto语句会很便捷
C.在C语言中,程序的模块化是利用函数实现的
D.由三种基本结构构成的程序只能解决小规模的问题

答案

参考答案:C

解析: C语言是结构化程序设计语言,顺序结构、选择结构、循环结构是结构化程序设计的三种基本结构,研究证明任何程序都可以由这三种基本结构组成。但是程序可以包含一种或者几种结构,不是必须包含全部三种结构。自从提倡结构化设计以来,goto就成了有争议的语句。首先,由于goto语句可以灵活跳转,如果不加限制,它的确会破坏结构化设计风格。其次,goto语句经常带来错误或隐患。它可能跳过了某些对象的构造、变量的初始化、重要的计算等语句。Goto语句的使用会使程序容易发生错误并且也不易阅读,所以应避免使用。由三种基本结构构成的程序几乎能解决大部分问题。

单项选择题
填空题

使用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了用于表示Et期的类Date,但类Date的定义并不完整,按要求完成下列操作,将类的定义补充完整。
(1)定义私有成员变量year、month、day,分别表示年、月、日,类型为int。请在注释1后添加适当的语句。
(2)完成构造函数,分别给year、month、day赋值,请在注释2后添加适当的语句。
(3)完成重载符号“+=”的定义,请在注释3后添加适当的语句。
(4)完成函数print打印函数,如2005年1月5日到屏幕和文件out3.txt格式相同,请在注释4后添加适当的语句。
注意:增加代码,或者修改代码的位置已经用符号表示出来。请不要修改其他的程序代码。
试题程序:
#include<iostream.h>
#include<fstream>
#include<iomanip>
#include<cmath>
using namespace std;
void WriteFile(int c)

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

void WriteFile(char *str)

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

void ClearFile()

ofstream out1;
out1.open("out3.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********
WriteFile(year);
WriteFile("年");
WriteFile(month);
WriteFile("月");
WriteFile(day);
WriteFile("日");

int main()

ClearFile();
Date National_day(2004,10,5);
National_day+=3;
National_day.print();
return 0;