自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 问答 (4)
  • 收藏
  • 关注

原创 懒猫老师数据结构4作业:用类模板实现顺序栈

#pragma onceconst int MAX_SIZE = 100;template <class DataType>class stack{private: DataType* data;//属性:线性表! int size;//堆栈实际大小 int top;//栈顶public: stack();//默认构造函数 stack(int s);//有参构造函数 ~stack();//析构函数 void push(DataType ch);//入栈 DataTy.

2021-08-22 11:52:59 253

原创 顺序栈的实现

出现delete释放边界 超出 new创建的内存边界的情况!报错!删去delete后不报错!但未释放内存!暂未得到解决!!!!!!CRT detected that the application wrote to memory after end of heap buffer_wu_lai_314的专栏-CSDN博客看该文章!!!!#pragma onceconst int MAX_SIZE = 100;class stack{private: char* data;//属性.

2021-08-20 23:14:29 132

原创 多项式显示和加减运算(链表)(未完成,存在各种问题!!!)气s了!

#include <iostream>using namespace std;typedef struct polynomial { int coef; //系数coefficient int exp; //指数 struct polynomial* next;}*Link, Node;void inputPoly(Link head);//用于从控制台读入链表的函数void print(Link head);//打印链表用的函数void insert(Lin.

2021-08-19 18:51:06 112

原创 多项式显示!

#include <iostream>using namespace std;void print_(int coef, int exp, int flag1, int flag2, int flag3, int flag4) { if (flag1 == 1) cout << "-" ; else if (flag1 == 2) cout << "+" ; if (flag2 == 1) cout << coef; if (fla.

2021-08-18 19:51:54 193

原创 约瑟夫问题(三种方法)

首先是循环链表法(运行出错!暂时未找到具体原因!跳过)#include <iostream> using namespace std;struct node { int data; struct node* next;};int main() { int n, m, count, j = 1; int answer[100]; struct node* head, * tail, * p, * q; head = (struct n

2021-08-18 15:46:24 199

原创 数据结构:学生管理系统链表作业1.0(存在问题待解决)

#include <iostream>#include <string>#include <stdio.h>using namespace std;const int SIZE = 20;typedef struct Student { //char number[SIZE]; unsigned int number; char name[SIZE];}st;typedef struct node { st data; struct ...

2021-08-17 13:07:59 92

原创 线性表 题1:

2021-08-10 22:22:59 97

原创 C++primer plus 第十章编程练习6:

6. 下面是一个类声明:(……代码省略……)请提供成员函数的定义和测试这个类的程序。// stack.h -- struct and class definition#ifndef STACK_H_#define STACK_H_class Move{private: double x; double y;public: Move(double a = 0,double b = 0); ~Move(); void showmove()co

2021-08-08 16:26:31 487

原创 C++primer plus 第十章:编程练习5:

5. 考虑下面的结构声明:struct customer { char fullname[35]; double payment;};编写一个程序,它从栈中添加和删除customer结构(栈用Stack类声明表示)。每次customer结构被删除时,其payment的值都被加入到总数中,并报告总数。注意:应该可以直接使用Stack类而不作修改;只需修改typedef声明,使Item的类型为customer,而不是unsigned long即可。// stac...

2021-08-07 18:43:37 1272

原创 C++primer plus 第十章:编程练习2

2. 下面是一个非常简单的类定义:(……代码省略……)它使用了一个string对象和一个字符数组,让您能够比较它们的用法。请提供未定义的方法的代码,以完成这个类的实现。再编写一个使用这个类的程序,它使用了三种可能的构造函数调用(没有参数、一个参数和两个参数)以及两种显示方法。下面是一个使用这些构造函数和方法的例子:Person one; // use default constructorPerson two("Smyt...

2021-08-07 17:08:36 1290

原创 C++primer plus 第十章:编程练习1

1.为复习题5描述的类提供方法定义,并编写一个小程序来演示所有特性。头文件(类声明):#pragma once#ifndef BNAK_H_#define BANK_H_#include<string>class Acount {private: std::string name; std::string acc; double deposit;public: Acount(); Acount(const std::string& na, const .

2021-08-07 14:18:23 957

原创 C++primer plus 第八章:编程练习7

7. 修改程序清单8.14,使其使用两个名为SumArray()的模板函数来返回数组元素的总和,而不是显示数组的内容。程序应显示thing的总和以及所有debt的总和。// tempover.cpp --- template overloading#include <iostream>template <typename T>T SumArray(T arr[], int n);template <typename T>T SumArray(T* ar.

2021-08-05 18:40:52 460

原创 C++primer plus 第八章:编程练习6

6. 编写模板函数maxn(),它将由一个T类型元素组成的数组和一个表示数组元素数目的整数作为参数,并返回数组中的最大的元素。在程序对它进行测试,该程序使用一个包含6个int元素的数组和一个包含4个double元素的数组来调用该函数。程序还包含一个具体化,它将char指针数组和数组中的指针数量作为参数,并返回最长的字符串的地址。如果有多个这样的字符串,则返回其中第一个字符串的地址。使用由5个字符串指针组成的数组来测试该具体化。#include <iostream>using nam..

2021-08-05 18:12:09 309

原创 C++primer plus 第八章:编程练习5

5. 编写模板函数max5(),它将一个包含5个T类型元素的数组作为参数,并返回数组中最大的元素(由于长度固定,因此可以在循环中使用硬编码,而不必通过参数来传递)。在一个程序中使用该函数,将T替换为一个包含5个int值的数组和一个包含5个double值的数组,以测试该函数。#include <iostream>using namespace std;template <typename T>T max5(T tl[5]);int main() { int tl1[5]

2021-08-05 15:05:14 141

原创 C++primer plus 第八章:编程练习4

4. 下面是一个程序框架:…………(省略,敲起来实在繁琐,大家看书就好)请提供其中描述的函数和原型,从而完成该程序。注意,应有两个show()函数,每个都使用默认参数。请尽可能使用const参数。set()使用new分配足够的空间来存储指定的字符串。这里使用的技术与设计和实现类时使用的相似。(可能还必须修改头文件的名称,删除using编译指令,这取决于所用的编译器)。#include <iostream>#include <cstring>using name...

2021-08-05 14:51:58 136

原创 C++primer plus 第八章:编程练习3

3. 编写一个函数,它接受一个指向string对象的引用作为参数,并将该string对象的内容转换为大写,为此可使用表6.4描述的函数toupper()。然后编写一个程序,它通过使用一个循环让您能够用不同的输入来测试这个函数,该程序的运行情况如下:#include <iostream>#include <cctype>#include <string>using namespace std;string Toupp(string& str);in

2021-08-05 14:06:33 285

原创 C++primer plus 第八章:编程练习2

2. CandyBar结构包含3个成员,第一个成员存储candy bar的品牌名称;第二个成员存储candy bar的重量(可能有小数);第三个成员存储candy bar的热量(整数)。请编写一个程序,它使用一个这样的函数,即将CandyBar的引用、char指针、double和int作为参数,并用最后3个值设置相应的结构成员。最后3个参数的默认值分别为“Millennium Munch”、2.85和350。另外,该程序还包含一个以CandyBar的引用为参数,并显示结构内容的函数。请尽可能使用const.

2021-08-05 13:23:30 688

原创 C++primer plus 第八章:编程练习1

1. 编写通常接受一个参数(字符串的地址),并打印该字符串的函数。然而,如果提供了第二个参数(int类型),且该参数不为0,则该函数打印字符串的次数将为该函数被调用的次数(注意,字符串的打印次数不等于第二个参数的值,而等于函数被调用的次数)。是的,这是一个非常可笑的函数,但它让您能够使用本章介绍的一些技术。在一个简单的程序中使用该函数,以演示该函数是如何工作的。全局变量static int num; 记录被调用次数!#include <iostream>using namespace

2021-08-05 12:01:05 133

原创 10. 设计一个名为calculate()的函数,它接受两个double值和一个指向函数的指针,而被指向的函数接受两个double参数,并返回一个double值。calculate()函数的类型也是d

10. 设计一个名为calculate()的函数,它接受两个double值和一个指向函数的指针,而被指向的函数接受两个double参数,并返回一个double值。calculate()函数的类型也是double,并返回被指向的函数使用calculate()的两个double参数计算得到的值。例如,假设add()函数的定义如下:double add(double x, double y){ return x + y;}则下述代码中的函数调用将导致calculate()把2.5...

2021-08-01 18:42:30 1095

原创 注意!难!9. 这个练习让您编写处理数组和结构的函数。下面是程序的框架,请提供其中描述的函数,以完成该程序。

第一个函数getinfo(),一个结构体数组,一个int类型参数,结构体数组参数存储了学生的姓名,爱好,oop等级这三个信息,而int类型的参数则是输入数据的数目的上界,也可以通过直接敲回车来提前结束输入,否则就需要输入到上界数目个信息。第二个函数display1(),该函数就只接受一个结构体参数,然后把结构体的内容显示出来。第三个函数display2(),该函数接受一个结构指针,然后显示结构体内容。第四个函数display3(),该函数接受结构体数组和int类型参数,对应于getinfo()函

2021-08-01 16:55:49 228

原创 8. 在不使用array类的情况下完成程序清单7.15所做的工作。编写两个这样的版本:

a. 使用const char*数组存储表示季度名称的字符串,并使用double数组存储开支。b. 使用const char*数组存储表示季度名称的字符串,并使用一个结构,该结构只有一个成员——一个用于存储开支的double数组。这种设计与使用array类的基本设计类似。a代码://arrobj.cpp -- functions with array objects#include <iostream>#include <array>#include <s..

2021-08-01 11:40:12 128

原创 C++ primer plus 第七章编程练习:7. 修改程序清单7.7中的3个数组处理函数,使之使用两个指针参数来表示区间。

7. 修改程序清单7.7中的3个数组处理函数,使之使用两个指针参数来表示区间。fill_array()函数不返回实际读取了多少个数字,而是返回一个指针,该指针指向最后被填充的位置;其他的函数可以将该指针作为第二个参数,以标识数据结尾。// arrfun3.cpp -- array functions and const#include <iostream>const int Max = 5;// function prototypesdouble* fill_array(doub

2021-08-01 09:53:36 330

原创 C++ primer plus 第七章编程练习:6. 编写一个程序,它使用下列函数:Fill_array()将一个double数组的名称和长度作为参数。

Fill_array()将一个double数组的名称和长度作为参数。它提示用户输入double值,并将这些值存储到数组中。当数组被填满或用户输入了非数字时,输入将停止,并返回实际输入了多少个数字。Show_array()将一个double数组的名称和长度作为参数,并显示该数组的内容。Reverse_array()将一个double数组的名称和长度作为参数,并将存储在数组中的值的顺序反转。程序将使用这些函数来填充数组,然后显示数组;反转数组,然后显示数组;反转数组中除第一个和最后一个元素之外的所有

2021-08-01 09:31:03 382

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除