首页 > 编程语言 >C++

C++

时间:2023-05-23 18:23:04浏览次数:38  
标签:int MyArray ++ C++ data 输入 size

实现一个类模板,它可以接受一组数据,能对数据排序,也能输出数组的内容。

每行输入的第一个数字为0,1,2或3:为0时表示输入结束; 为1时表示将输入整数,为2时表示将输入有一位小数的浮点数,为3时表示输入字符。

如果第一个数字非0,则接下来将输入一个正整数,表示即将输入的数据的数量。

template<class T>
class MyArray {
private:
T* data;
int size;
public:
MyArray(int size);
bool check();
void sort();
void display();
~MyArray();
};
template<class T>
MyArray<T>::MyArray(int size) {
this->size = size;
data = new T[size];
for (int i = 0; i < size; i++) {
cin >> data[i];
}
}
template<class T>
void MyArray<T>::sort() {
for (int i = 0; i < size; i++) {
for (int j = i + 1; j < size; j++) {
if (data[i] > data[j]) {
T temp;
temp = data[i];
data[i] = data[j];
data[j] = temp;
}
}
}
}
template<class T>
void MyArray<T>::display() {
for (int i = 0; i < size; i++) {
cout << data[i];
if (i == size - 1) cout << endl;
else cout << " ";
}
}

标签:int,MyArray,++,C++,data,输入,size
From: https://www.cnblogs.com/zh-ang-zhang/p/17426047.html

相关文章

  • c++打卡第三十五天
    一、最大公约数1、问题描述 2、设计思路本题中可以有三种算法,其中我们提供第三种辗转相除法的代码,第一种是从1开始,由于最大公约数可以是最小的那个数,所以我们循环条件到两个之中的小数,如果这个数满足可以整除两个整数,遍历到最大的那个数时,打印出来。第二种是从小数开始循环,当......
  • C++ 模板 使用 enum 代替 typename
    enumtestEnum{A,B,C};template<testEnumC>classTestClassTemplate{public:voidprint(){printf("common\n");}};template<>classTestClassTemplate<A>{public:voidprint(){printf(&quo......
  • SQLite3 客户端程序,Win32 SDK ,C/C++
    1 WIn32SDK程序,尽量放在一个文件中,主要用到Tree,ListView,Edit控件。2 把控件封装成类,但不封装窗口回调函数。类实例为全局变量,方便消息回调函数调用执行。这样做最简单。3 Edit控件处理按键输入,模仿shell执行SQL查询4打开数据库文件时若没有此文件则新建,否则打开,打开......
  • c++的前世今生
    C++语言是本贾尼·斯特劳斯特卢普在1982年发明的,早期版本被称为CwithClasses,之后在1983年更名为C++。C++语言在发明后很快就获得了广泛的应用,由于其具有高效、灵活和兼容性强的特点,成为了许多领域的首选编程语言。在计算机科学和工程领域,C++语言被广泛用于开发操作系统、......
  • 【重学C++】04 | 说透C++右值引用(上)
    文章首发【重学C++】04|说透C++右值引用、移动语义、完美转发(上)引言大家好,我是只讲技术干货的会玩code,今天是【重学C++】的第四讲,在前面《03|手撸C++智能指针实战教程》中,我们或多或少接触了右值引用和移动的一些用法。右值引用是C++11标准中一个很重要的特性。第一次接......
  • C++ 手搓 CNN 卷积神经网络
    代码请自取https://github.com/xoslh/CNN-MNIST-CPP-1卷积神经网络-CNN的基本原理​ 卷积神经网络(ConvolutionalNeuralNetworks,CNNs)是一种深度学习算法,特别适用于图像处理和分析。其设计灵感来源于生物学中视觉皮层的机制,是一种强大的特征提取和分类工具。1.1Layers......
  • c++模板例题
    一、问题描述。1 编写一个程序,使用类模板对数组元素进行排序,倒置、查找和求和2 具有对数组元素进行排序,倒置、查找和求和功能,3 然后产生类型实参分别为int型和double型的两个模板类,4 分别对整型数组与双精度数组完成所要求的操作 实现代码: #include<iostream> using name......
  • c++打卡练习(36)
    求多项式的和以50为例S=1+1/2+1/2*3+1/2*3*4+......1/2*3*.....*50流程图:伪代码:源代码:#include<iostream>usingnamespacestd;intmain(){ doublea=1,b,num,N; cout<<"输入你想阶乘到的最大数"<<endl; cin>>N; for(inti=1;i<=N;i++){ a*=i; b=1/a; num......
  • c++打卡第三十四天
    一、勾股数1、问题描述 2、设计思路   由题可知,数学中并不存在两条直角边相等的勾股数,同时两个直角边的平方和并不一定是整形,可能会存在小数,这样我们的判断勾股数的方法就是,两个直角边的平方和开根号,对此值强制转化为整形,得到的结果进行平方看是否与两直角边的平方和相......
  • C++的cout
    ▲setw(n)用法:通俗地讲就是预设宽度如cout<<setw(5)<<255<<endl;结果是:(空格)(空格)255▲setfill(charc)用法:就是在预设宽度中如果已存在没用完的宽度大小,则用设置的字符c填充如cout<<setfill('@')<<setw(5)<<255<<endl;结果是:@@255▲setbase(i......