(开专)计算机网络技术毕业大作业

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

电大学历教育专科计算机网络技术专业毕业作业
(试用)
姓名:
学号:
入学时间:
分校:
重庆广播电视大学
成绩记录单
第二部分应用考核部分
【C++程序设计部份】
1.程序填空:对按从小到大排列的有序数组a[n]进行二分查找x的算法,若查找成功返回该元素下标,否则返回-1。

int BinarySearch(int a[],int x)
{
int low=0, high=N-1; //定义并初始化区间下界和上界变量
int mid; //定义保存中点元素下标的变量
while(low<=high) {
mid=___(1)___;
if(x==a[mid]) ___(2)___;
else if(x<a[mid]) high=mid-1;
else ___(3)___;
}
return -1;
}
(1)
(2)
(3)
【数据结构部份】
2.程序填空:已知一个利用数组实现栈的类定义如下:
const int ARRAY_SIZE=10;
class Stack {
public:
void Init() {top=-1;} //初始化栈为空
void Push(int newElem); //向栈中压入一个元素
int Pop(); //从栈顶弹出一个元素
bool Empty() { //判栈空
if(top==-1) return true;else return false;}
int Depth() {return top+1;} //返回栈的深度
void Print();
//按照后进先出原则依次输出栈中每个元素,直到栈空为止
private:
int elem[ARRAY_SIZE]; //用于保存堆栈元素的数组
int top; //指明栈顶元素位置的指针
};
该类的Pop和Print函数的实现分别如下:
___(1)___ {
if(top==-1) {
cout<<"栈空!"<<endl;
exit(1); //中止运行
}
return ___(2)___;
}
void Stack::Print() {
while(!Empty())
cout<<___(3)___ <<' ';
}
(1)
(2)
(3)
3.—个—维数组a[10]中存储着有序表(15,26,34,39,45,56,58,63,74,76),根据折半搜索所对应的判定树,写出该判定树中度为1的结点个数,并求出在等概率情况下进行成功搜索时的平均搜索长度。

度为1的结点个数:()
平均搜索长度:()
【SQL Server数据库基应用】
4.写出SQL语句功能:
select 课程.课程号,课程.课程名,count(*) as 选课人数
from 课程,选课
where 课程.课程号=选课.课程号
group by 课程.课程号,课程.课程名
5.写出SQL语句功能:
select *
from 学生
where 学生号 in (select 学生号
from 选课
group by 学生号 having count(*)<=2
) or not exists (select *
from 选课
where 学生.学生号=选课.学生号
)
【Visual Basic程序设计部分】
6.综合数据类型、流程控制、编程模式比较Visual Basic程序和C++程序的语法差异。

【.NET编程基础】
7.简述类和对象的区别。

8.简述面向对象编程中对象需要支持的三大特性。

9.描述使用Command进行数据更新的步骤。

【Web数据库设计与应用】
10.综合开发速度、维护速度、性能、便利性、应用前景等方面比较Windows Form应用程序设计和网页应用程序设计的差异。

【C++程序设计部份】
1.完成一次Visual 2003的安装,写出安装基本步骤。

写出被安装计算机的软硬件环境。

(条件允许的可以写 2005的安装,如有可能MSDN也安装上)
2.C++程序随机生成1个N(给N任意指定一个1000以上的整数)个元素的浮点数数组,尝试用数据结构教材介绍的任意1种排序方式进行排序,并用程序完成排序的耗时计算。


出你的试验程序和试验运行结果、试验的计算机软硬件环境。

3.计算1+3+32+...+3n的值并输出,假定分别用i,p,s作为循环变量、累乘变量和累加变量的标识符(给n任意指定一个大于5小于10的整数)。

4.按照下面函数原型语句编写一个递归函数计算出数组a中n个元素的平方和并返回。

int f(int a[],int n);
5.根据下面类中CompareBig 函数成员的原型和注释写出它的类外定义。

class AA {
int* a;
int n;
int MS;
public:
void InitAA(int aa[], int nn, int ms) {
if(nn>ms) {cout<<"Error!"<<endl; exit(1);}
MS=ms;
n=nn;
a=new int[MS];
for(int i=0; i<MS; i++) a[i]=aa[i];
}
int CompareBig(AA b); //比较*this与b的大小,从前向后按两数组
//中的对应元素比较,若*this中元素值大则返回1,若b中
//元素值大则返回-1,若相等则继续比较下一个元素,直到
//一个数组中无元素比较,此时若两者的n值相同则返回0,
//否则若*this中的n值大则返回1,若b中的n值大则返回-1。

};
【数据结构部份】
6.在一个带表头附加结点的单链表L中,假定所有结点的值按递增顺序排列,试编写一个while循环补充下面函数,功能是删除表L中所有其值大于等于:min,同时小于等于max 的结点。

void rangeDelete(ListNode*&L,ElemType min,ElemType max)
{
ListNode*q=L,*p=L一>link;
//添加的while循环位置
}
//请把while循环内容写在此行下面
7.已知二叉搜索树中的结点类型BinTreeNode定义为:
structBinTreeNode{ElemTypedata;BinTreeNode'left,*right;};
其中data为结点值域,left和right分别为指向左、右子女结点的指针域。

参数BST 指向一棵二叉搜索树的根结点。

试根据下面的函数声明编写一个非递归算法,从BST树中搜索出具有item参数值的结点,若搜索成功则返回该结点的地址,否则返回NULL。

BinTreeNodei*Find(BinTreeNode*BST,const ElemType&item);
//请把函数定义写在此行下面
8.已知二叉树中的结点类型BinTreeNode定义为:
struct BinTreeNode{char data;BinTreeNode *left,*right;};
其中data为结点值域,left和right分别为指向左、右子女结点的指针域,根据下面函数声明编定子出求一棵二又树中叶子结点总数的算法,该总数值由函数返回。

假定参数BT初始指向这棵二叉材的根结点.
inht BTreeLeafCount(BinTreeNode* BT);
【数据库基础及应用部份】
9.假设使用名称为AAA的数据库,它包括Students(学号 varchar(8),姓名 varchar(8),年龄 int,专业 varchar(20),入学日期 DateTime)和Score(学号 varchar(8),课程名varchar(10),成绩 numeric(5,2))两张表。

要求:从名字为“Score”的表中查询出所有记录。

往Students表插入1条完整信息的记录。

显示出Students表中所有学生记录的学号列的前四个字符。

【Visual Basic程序开发部分】
10.编写一个程序,当鼠标移到Picturel控件上时,鼠标指针改变为忙形状;当在Picturel 控件上单击鼠标右键时,通过消息框显示“XXX同学点击了右键!”,XXX为同学自己姓名,并改变鼠标指针的形状为手。

写出事件和对应程序。

11.列表框应用程序。

要求从文本框中输人姓名,然后按“添加’’按钮,把姓名添加到列表框中;当选择列表框中某一项时,按“删除”按钮,从列表框中删除;当选择列表框中某一项时,按“修改’’按钮,把列表框中选取的项送往文本框且“修改”按钮变为“修改确认”。

在文本框的内容修改好后,按“修改确认”按钮,再把文本框中修改后的信息送到列表框且“修改确认”按钮变为“修改”。

程序运行结果如图所示。

12.在窗体上建立一个驱动器列表框、目录列表框、文件列表框、图片框。

要求程序运行后,驱动器列表框Drivel的默认驱动器设置为C盘,选择File1中所列的图片文件(*.bmp和*.jpg),则相应的图片显示在图片框Picture1中。

程序运行结果如图所示。

13.Access “学生”的数据库中有"students"的数据表,其结构及初始记录如表1所示。

使用ADO对象和MSFlexGrid控件设计数据库列表显示程序。

程序的设计界面和运行结果如图所示,程序用纯代码方式实现,写出事件和相应事件的程序。

学号姓名专业
2004001 张红软件专业
2004003 王丽会计专业
2004002 李强软件专业
【.NET编程基础】
14.下制作如下布局的应用程序的控件需求、实现步骤。

(中间部分可以拖放来调整左右部分的宽度)
15.在中根据数据库自动生成一个树如下:(写出需要的控件和控件用途、主要事件和对应程序)
16.写出下根据数据库表制作这个界面的主要控件、属性设置和程序。

【WEB数据库设计与应用】
17.用+技术实现如下表格,表格数据来至Access库CurtData的UserInfo 数据表。

给出对应事件和程序。

(数据库表结构和字段名参看表格)
18.请给第17题程序增加分页功能。

写出对应的事件和程序。

19.给17题表格增加排序功能。

给出对应的事件和程序代码。

20.实现如下数据表格功能效果。

给出对应程序代码和代码说明。

得分
第三题、项目设计(5题,共200分)
批改人签名
设计完成一个笔记管理系统,采用数据库管理既方便记录自己在学习工作生活中的一些心得体会,又能方便查询,积累多了便是一种财富。

要求:
为了自己笔记的安全考虑,需要有登录功能,可以不考虑多用户,但是单个用户也需要具有口令管理功能。

资料目录用树型显示,内容按照层次分布。

对于资料编辑区应该有对应快捷菜单,便于操作。

树结构目录和编辑器的区间大小可以通过之间的白条进行拖放伸缩。

整个设计尽量考虑操作方便,并且给每个控件尽可能调整背景色和前景色实现界面美观。

参考主界面如下:
菜单效果参考:
树结构右键菜单(该菜单可以用工具栏或窗体菜单代替):
编辑器右键菜单:
请在设计完成后回答如下几个问题
1.分析设计个项目的可行性。

(10分)
2.给出你设计这样一个项目的软硬件环境。

(10分)硬件:CPU、内存、硬盘、显示器
软件:操作系统、开发工具、数据库环境
3.绘制出项目流程图。

(20分)
4.给出整个项目数据库结构和设计思想(20分)
(请分模块介绍实现)
5.给出各个控件的相应事件程序(没有编程的控件不写)(140分)(请附打印程序页)
代码附页书写方法,拒绝直接打印所有源文件方式:。

相关文档
最新文档