求精<初学的看下.>
main(){int a[11],i,j,t;
printf("input ten numbers:\n");
for(i=1;i<11;i++)scanf("%d",&a[i]);
printf("\n");
for(i=1;i<10;i++)
for(j=10;j>i;j--)
if(a[j-1]>a[j])
{t=a[j];a[j]=a[j-1];a[j-1]=t;}
printf("the sorted numbers:\n");
for(i=1;i<11;i++)printf("%d ",a[i]);
}
*******************************************
上面是用气泡法从小到大排列输入的10位数.
如何修改源程,从而提高效率?
搜索更多相关的解决方案:
初学
----------------解决方案--------------------------------------------------------
o(∩_∩)o...哈哈
:o :o #include "stdio.h"
main()
{
int a[10],i,j,t;
printf("input ten numbers:\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
printf("\n");
for(i=0;i<10;i++)
for(j=10;j>i;j--)
if(a[j-1]>a[j])
{
t=a[j];
a[j]=a[j-1];
a[j-1]=t;
}
printf("the sorted numbers:\n");
for(i=0;i<10;i++)
printf("%d ",a[i]);
}
----------------解决方案--------------------------------------------------------
我写的时候没注意缩进.
这程序在每个数的比较中都是从尾比到头.如果前面都排列好了1.2.3.4.5.6.7.8.9.最后一个10系统也会和前面的比.能不能让程序提前就知道不需要再比了呢.?
因为<<吉林大学C语言视频教程>>这一题最后没有讲到.我自己怎么想就是想不会...
求各位C达人帮帮忙..加个注释在后面最好.!
----------------解决方案--------------------------------------------------------
你看一下“数据结构”就知道了 ,那上又很多种排序的方法啊!!!
插入排序
交换排序
选择排序
归并排序
基数排序。。。。
----------------解决方案--------------------------------------------------------
:time: 需要时间哦.我才学到气泡法..到这里就不怎么会了.
:'(我先学去...
谢谢你啦./!
----------------解决方案--------------------------------------------------------
这个冒泡挺个性了啊!从后往前排了!
----------------解决方案--------------------------------------------------------
#include<stdio.h>
int buddle(int array[],int n)
{
int m,t;
for(n;n>0;n--)
for(m=0;m<=n-2;m++)
if(array[m]>array[m+1])
{t=array[m];array[m]=array[m+1];array[m+1]=t;}
}
int main()
{
int a[50];
int i,j,k;
printf("input the num:");
scanf("%d",&i);
printf("\n");
for(j=0;j<i;j++)
{
scanf("%d ",&a[j]);
}
buddle(a,i);
for(k=0;k<i;k++)
printf("%d ",a[k]);
return 0;
}
冒泡法排序
----------------解决方案--------------------------------------------------------
我也是学到这里来了啊
----------------解决方案--------------------------------------------------------
#include <stdlib.h>
qsort() /* 去查下这个函数的算法 */
----------------解决方案--------------------------------------------------------
老火,我学的那本书,只讲了概念,有些例题,但没有各种算发,,冒泡法还是论坛上看到的,看来又的买书了
----------------解决方案--------------------------------------------------------