tnfh.net
当前位置:首页 >> C语言数组排序 >>

C语言数组排序

#include void main() { int a[10] = { 10,2,3,4,5,6,9,8,7,1 }; int i,j,t; for(j=0;j

像是选择法排序,但不太简练! 正确的选择法为: #include void main(void) { int a[9]={3,42,55,546,43,323,54,121,32},i,j,l,temp; for(i=0;i

#include "stdio.h" void main() { int arry[5] = {25,65,25,85,41}; int i,temp,j; for(i=4;i>=0;i--) for(j=0;j

if (strcmp(*p[i],*p[i+1]>0)) { temp=*p[i]; *p[i]=*p[i+1]; *p[i+1]=temp; } 这一段把i换成j试试看,我没试,不过感觉是这里的问题; 希望能帮到你。

思路:在数值进行排序时,下标也同时移动。这就要求二者要联动。为此创建一个PAIR结构体,将此二者关联在一起。用库里的快排函数qsort可以省略排序的麻烦,并指定qsort按PAIR中数值大小为标准排序结构体数组,这样排序结果中的结构体数组下标和...

#include main() { int a[10]={2,1,3,4,6,5,7,8,9,0},i,j,t; for(i=0;i

标准C是不支持你这种变量定义动态数组的 struct item all[N]; 这达不到你想要的效果!需要定义成指针,然后malloc int i,j; printf("请输入%d组信息:\n",N); struct item *all ; int i,j; printf("请输入%d组信息:\n",N); all=(struct item *)...

这里先直接给个从大到小排列的代码吧:: #include # define N 100void main(){int buff[N];int i,j,numN,temp;//输入:printf("Please input an array: ");for(i=0;i

#include int main() {int i,j,t,a[10]={56,98,76,69,88,43,29,74,58,66}; for(i=0;i

#include #include int main () //用成中文括号了 { int n,i; int *p; int h; void select_sort(int*a,int n); printf("输入数组中元素个数 "); scanf("%d",&n); p=(int *)malloc(n*sizeof(int)); for(i=0;i

网站首页 | 网站地图
All rights reserved Powered by www.tnfh.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com