编程一小时2023.5.5
1.
#include <iostream>
using namespace std;
template <class T>
class MyArray
{
public:
bool check();
~MyArray();
MyArray(int);
void sort();
void display();
private:
int size;
T*data;
};
template<class T>
MyArray<T>::MyArray(int s)
{
size=s;
data=new T[size];
for(int i=0;i<size;i++)
cin>>data[i];
}
template<class T>
void MyArray<T>::display()
{
for(int i=0;i<size-1;i++) cout<<data[i]<<' ';
cout<<data[size-1]<<endl;
}
template<class T>
void MyArray<T>::sort()
{
for(int i=0;i<size;i++)
{
int min=i;
for(int j=i+1;j<size;j++)
{
if(data[min]>data[j])
{
min=j;
}
}
if(min!=i)
{
T temp=data[min];
data[min]=data[i];
data[i]=temp;
}
}
}
template<class T>
MyArray<T>::~MyArray(){ delete[] data;}
template<class T>
bool MyArray<T>::check(){
int i;
for(i=0;i<size-1;i++)
if(data[i]>data[i+1]) { cout<<"ERROR!"<<endl;return false;}
return true;
}
int main( )
{
MyArray<int> *pI;
MyArray<float> *pF;
MyArray<char> *pC;
int ty, size;
cin>>ty;
while(ty>0){
cin>>size;
switch(ty){
case 1: pI = new MyArray<int>(size); pI->sort(); pI->check(); pI->display(); delete pI; break;
case 2: pF = new MyArray<float>(size); pF->sort(); pF->check(); pF->display(); delete pF; break;
case 3: pC = new MyArray<char>(size); pC->sort(); pC->check(); pC->display(); delete pC; break;
}
cin>>ty;
}
return 0;
}
2.
#include <iostream>
#include <string>
using namespace std;
template <class T>
void sort(T *a, int size)
{
for(int i=0;i<size;i++)
{
cin>>a[i];
}
for(int i=0; i<size; i++)
{
int min=i;
for(int j=i+1; j<size; j++)
{
if(a[min]>a[j])
{
min=j;
}
}
if(min!=i)
{
T temp=a[min];
a[min]=a[i];
a[i]=temp;
}
}
}
template <class T>
void display(T* a, int size){
for(int i=0; i<size-1; i++) cout<<a[i]<<' ';
cout<<a[size-1]<<endl;
}
int main() {
const int SIZE=10;
int a[SIZE];
char b[SIZE];
double c[SIZE];
string d[SIZE];
int ty, size;
cin>>ty;
while(ty>0){
cin>>size;
switch(ty){
case 1:sort(a,size); display(a,size); break;
case 2:sort(b,size); display(b,size); break;
case 3:sort(c,size); display(c,size); break;
case 4:sort(d,size); display(d,size); break;
}
cin>>ty;
}
return 0;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?