#include <iostream> #define MAXSIZE 1000 using namespace std; typedef struct { int key; char *otherinfo; }ElemType; typedef struct { ElemType *r; int length; }SqList; void SelectSort(SqList &L) { int i,j,k; ElemType t; for(i=1; ;++i) { k=i; for(j=i+1; ;++j) if( ) k=j; if(k!=i) {t=L.r[i];L.r[i]=L.r[k];L.r[k]=t;} } } void Create_Sq(SqList &L) { int i,n; cin>>n; //输入的值不大于 MAXSIZE for(i=1;i<=n;i++) { cin>>L.r[i].key; L.length++; } } void show(SqList L) { int i; for(i=1;i<=L.length;i++) if(i==1) cout<<L.r[i].key; else cout<<" "<<L.r[i].key; } int main() { SqList L; L.r=new ElemType[MAXSIZE+1]; L.length=0; Create_Sq(L); SelectSort(L); show(L); return 0; }
时间: 2024-03-26 15:37:32 浏览: 69
#include <iostream>
这是一个使用选择排序算法对输入的一组数据进行排序的 C++ 程序。程序中定义了一个结构体类型 ElemType,其中 key 表示关键字,otherinfo 表示其他信息。另外还定义了一个 SqList 结构体类型,其中 r 指向 ElemType 类型的数组,length 表示数组的长度。程序中定义了函数 SelectSort,用于实现选择排序算法;函数 Create_Sq 用于创建 SqList 类型的数据;函数 show 用于输出排序后的结果。程序的主函数中先创建 SqList 类型的数据,然后调用 SelectSort 函数对数据进行排序,最后调用 show 函数输出排序后的结果。
阅读全文