开始先在排序搞了半天,一直输出不对,后来一直出现提交格式错误
代码如下
#include <iostream>
using namespace std;
void InsertionSort(int *num,int n)
{
int i = 0;
int j = 0;
int tmp = 0;
for(i = 1;i<n;i++)
{
tmp = num[i];//从待插入组取出第一个元素。
j = i-1; //i-1即为有序组最后一个元素(与待插入元素相邻)的下标
while(j>=0&&tmp<num[j]) //注意判断条件为两个,j>=0对其进行边界限制。第二个为插入判断条件
{
num[j+1] = num[j];//若不是合适位置,有序组元素向后移动
j--;
}
num[j+1] = tmp;//找到合适位置,将元素插入。
}
}
int main()
{
int n;//输入的次数
int nums=0;//数字的个数
int inputNum=0;//输入的数字大小
cin>>n;
int k=0;
while(n)
{ int aa[1000]={};
cin>>nums;
while(nums!=0)
{
nums--;
cin>>inputNum;
aa[k]=inputNum;
k++;
}
InsertionSort(aa,k);
cout<<aa[0];
for(int i=1;i<k;i++)
{
cout<<" "<<aa[i];
}
cout<<endl;
k=0;
n--;
}
}
一定记得要先输出一个aa[0]再加上“ ”,如果直接输出aa[i]+" "的话就会在最后多出来一个" ",就会报错:
目前已经AC了