⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 习题3-简单选择排序.c

📁 数据结构各章实验源代码; 数据结构实验源代码
💻 C
字号:
#include  "datastru.h"
#include  <stdio.h>

void selesort(RECNODE *r, int n)
{/*简单选择排序*/
	int i,j,k;
	RECNODE temp;

	for(i = 1; i < n; i++)
	  { k = i;                       /*k:最小关键字的初始位置*/
	    for(j = i + 1; j <= n; j++)
	      if(r[j].key < r[k].key)
		 k = j;                  /*k:跟踪记录当前最小关键字的位置*/
	    if(k != i)                   /*最小关键字元素和待排序列的第一个元素交换*/
	      {temp = r[i];   r[i] = r[k];   r[k] = temp;}
	  }
}

main( )
{ RECNODE  a[MAXSIZE];
  int  i, j, k, len;

 printf("\n\n输入待排序数据(整数,以空格隔开,0 结束) : "); k = 0; scanf("%d",&j);
 while(j != 0) { k++; a[k].key = j; scanf("%d",&j); }
 len = k;
 printf("\n排序前 : ");
 for (i = 0; i < len; i++)   printf("  %d",a[i+1].key);
 printf("\n");
 selesort (a,len);
 printf("\n\n排序后 : ");
 for (i = 0; i < len; i++)   printf("  %d",a[i+1].key);
 printf("\n\n");
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -