第二次作业
1. 用 C++ 编程实现一个模板链表类,并且简单测试其各种服务。
要求: a. 链表节点是一个类(或者结构)
b. 实现服务包括如下:
链表是否位空;
链表长度;
寻找链表中的第 k 个元素,并返回其值 ;
寻找元素 x ,如果发现 x ,则返回 x 的地址(在链表中的位置) ;
从链表中删除第 k 个元素,并且返回其值 ;
在第 k 个元素之后插入元素 x;
将链表所有元素送至输出流的服务 ;
重载输出流操作符 < <;
在链表尾部添加一个元素 ;
删除链表中的所有节点 ;
实现中必须考虑对一些异常的处理,同时我们必须保证在无法实现服务操作时程序仍然可以正确运行。
2. 用 c++ 编程测试多态性:
包括下面的情况:
a. 从一个拥有虚函数的基类开始,其子类将继承其多态性(即在子类中不用申明,该函数也是虚函数,
也可以重复申明)。
b. 虚函数可以从任意一个中间基类声明(即父类可以不必是虚函数,而其子类却可以)。此时对于父类指针,
没有多态性 . 多态性只从申明该虚函数的中间基类开始,延续给其子类。
c. 抽象类的纯虚函数具有多态性。
我们要求测试编程尽量简单。测试要全面,比如对 a. 继承性问题,我们要求既要测试基类的虚函数多态性问题,也
要测试基类的非虚函数的多态性问题。
3. 用 c++ 编程测试下面的情况:
公有派生和私有派生的比较:(注意,可以只实现对数据的访问测试,
对函数的访问与对数据的访问规则完全相同)
a. 在公有派生类和私有派生类内部对基类的访问规则是一样的,即只能访问基类的非私有数据和函数。
b. 在公有派生类对象和私有派生类对象对基类的访问规则有异同:
( 1 )公有派生类对象只可以访问基类的公有数据和函数
( 2 )私有派生类对象不可以访问任何基类的数据和函数。
c. 基类经过私有派生后,私有派生类的子类再不可以访问任何基类的数据和函数。
测试要简单全面,既要测试可以访问的数据函数,也要测试不可以访问的数据函数。
可将.cpp文件发至justnow5586985@126.com
高分悬赏visual c++编程题
long factorial(int m) \/\/用于求阶乘 { if(m==0||m==1)return 1;else return m*factorial(m-1);} long forSum(int n) \/\/用于求阶乘之和 { int i=0;long y=0;for(i=1;i<=n;i++){ y+=factorial(i);} return y;} include <stdio.h> int main(){ long y=0;int...
(高分悬赏)C++停车场管理系统
include<conio.h> include<io.h> int cars[12][4]={{1234,1,1,20},{2345,1,2,15},{3456,1,3,10},{4567,1,4,5},{0,1,5,0},{0,1,6,0},{0,2,1,0},{0,2,2,0},{0,2,3,0},{0,2,4,0},{0,2,5,0},{0,2,6,0}};\/*二维数组代表停车信息*\/ void save()...
悬赏分数!高分!!C++
你这个问题我已经答过了,在点击按钮的消息响应函数里下断点,看看有没有被调用,如果没有执行到断点处,说明你这个按钮没有添加小心响应函数,请用MFC提供的宏BEGIN_MESSAGE_MAP & END_MAESSAGE_MAP添加消息映射再试一次。还有,按钮显示出来只能说明你WM_PAINT消息函数被正确处理,按钮被绘制出来了,不...
求C++高手帮解:C语言表达式翻译 高分悬赏
中缀式的形式:(a+b)*c-d;转化成后缀式就是:ab+c*d-;意思就是a与b先进行计算,所以就先把a与b这两个操作数现在前面,然后再紧接着先运算符 表达式格式:(a+b)*c-d;其中a、b、c、d就是所说的变量(操作数),*+-就是所说的操作(运算符),()就是所说的小括弧 算术运算:+ ...
...语言用c或者c++,采用栈来实现这个函数。高分悬赏~~
int delta_j[ ]={1,2,2,1,-1,-2,-2,-1};int board[8][8];int exitn(int i,int j,int s,int a[ ]){ int i1,j1,k,count;for (count=k=0;k<8;k++){ i1=i+delta_i[(s+k)%8];j1=i+delta_j[(s+k)%8];if (i1>=0&&i1<8&&j1>=0&&j1<8&&board[I1][...
高分悬赏 活动问题 c++4.9.9.2 贪心
2 33333 1 2 2 3 3 4 输出 3 可以输出,但是你题目都说了最后1个数据为0 0,表示数据结束呀,你没有是不符合题目要求的呀。应该为 还有一个数据 2 33333 1 2 2 3 3 4 0 0 输出 3 另外:每行2个整数(10000以内),33333不合法的,根据题目要求,希望你认真阅读下题目要求先。
高分悬赏!!!谁会用c++编写一个 排考场座位系统 啊!!!
srand((unsigned int)time(&t));for ( r=0; r<row; r++){ for ( c=0; c<col; c++){ if (seat[r][c] == 0)break; \/\/有空位子 if (r==row && c==col){ cout<<"本教室考生已满!"<<endl;return ;} } } \/\/---\/\/ ...
高分悬赏:C++中如何利用FinWindow()函数查找并关掉任务管理器?_百度...
光用FindWindow()只能找到窗口,并不能关掉。关掉要用TerminateProcess()函数。下面,我就举例说明吧,放在一个按钮的事件代码中。HWND hwnd=::FindWindow(NULL,"Windows 任务管理器");if(hwnd!=NULL){ DWORD dwProcessId;::GetWindowThreadProcessId(hwnd, &dwProcessId);HANDLE handle=OpenProcess (...
高分悬赏这道题的解法(C或C++,也可以是思路)
首先C是最大的并且是三位数,所以A的百位数只可能是1 2 3 再来看B,应为B是A的两倍,所以B的百位数只可能是2到6之间,3*A的最大值只有987,所以A<325,所以B的百位数只可能到6。然后C的百位数就是3到9之间。以上分析当然是一个笼统的分析而已,可以更加详细的分析这3个数之间的关系,例如...
求高手解答一些简单的C语言题目!(高分悬赏)
1、Before GlobalPlusPlus(), it is 1 Before ++, it is 1 After ++, it is 2 After GlobalPlusPlus(), it is 2 2、over!3、(1)printf("Input a year:");scanf("%d",&year);(2)(0==year%4 && 0!=year%100) || 0==year%400 4、(1)s[i]!='\\0'(2)s[j]=s[i];5...