#include "iostream.h" void Sort(int *w,int *t,int n); int main() { int n,c; cout<<"请输入所要装载物品的数量"<<endl; cin>>n; int *w=new int[n+1]; //指向物品的重量 int *t=new int[n+1]; //指向物品的序号 cout<<"请输入该单位所能够装载的最大重量:"<<endl; cin>>c; cout<<"请输入所要装载的物品的重量"<<endl; for(int i=1;i<n+1;i++) { cin>>w[i]; } for(i=1;i<n+1;i++) t[i]=i; Sort(w,t,n); for(i=1;i<=n&&w[i]<=c;i++) { //x[t[i]]=1; c-=w[i]; cout<<"输出所装载的物品序列号以及它的重量为:"<<t[i]<<" "<<w[i]<<endl; } delete []w; delete []t; return 0; } void Sort(int *w,int *t,int n) { int temp,tem; for(int j=0;j<n+1;j++) { for(int k=j;k<n-1;k++) if(w[k]>w[k+1]) { temp=w[k]; w[k]=w[k+1]; w[k+1]=temp; tem=t[k]; t[k]=t[k+1]; t[k+1]=tem; } } for(int i=1;i<n+1;i++) { cout<<w[i]<<endl; } }