David_Wang673 2014-08-10 01:26
浏览 951

怎么实现从数组最后一个元素开始,找到第一个非递增元素,然后再冒泡排排序

#include
int main()
{
int n,k,q,p,m,i,j,temp;
int a[1024];
scanf("%d",&m);
while(m--)
{
scanf("%d%d",&n,&k);
if((n=1024)||(k64)) return 0;
for(i=0;i while(k--)
{
for(i=n-1;i>0;i--)
{
if(a[i]>a[i-1])
{

                  for(p=1;p<n-i;p++)
                  {
                      for(q=i;q<n-i-p;q++)
                      {
                          if(a[q]>a[q+1])
                          {
                              temp=a[q];
                              a[q]=a[q+1];
                              a[q+1]=temp;
                          }
                      }
                  }
              }
       }
   }
}
for(i=0;i<n;i++)  printf("%d ",a[i]);
return 0;

}
为什么实现不了,从数组最后一个元素开始,找到第一个非递增元素,然后再冒泡排排序

  • 写回答

0条回答

    报告相同问题?

    悬赏问题

    • ¥20 关于#硬件工程#的问题,请各位专家解答!
    • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
    • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
    • ¥30 截图中的mathematics程序转换成matlab
    • ¥15 动力学代码报错,维度不匹配
    • ¥15 Power query添加列问题
    • ¥50 Kubernetes&Fission&Eleasticsearch
    • ¥15 報錯:Person is not mapped,如何解決?
    • ¥15 c++头文件不能识别CDialog
    • ¥15 Excel发现不可读取的内容