分类：电脑/网络-软件
问题：求几个简单的Ｃ程序１．冒泡排序２．选择排序３．链表插入急用啊～～ 
１．冒泡排序
２．选择排序
３．链表插入
急用啊～～谢谢咯
回答：1void BuleSort(SeqList R)   { //R（l..n)是待排序的文件，采用自下向上扫描，对R做冒泡排序     int i，j；     Boolean exchange； //交换标志     for(i=1;i<n;i++){ //最多做n-1趟排序       exchange=FALSE； //本趟排序开始前，交换标志应为假       for(j=n-1;j>=i；j--) //对当前无序区R[i..n]自下向上扫描        if(R[j+1].key<R[j].key){//交换记录          R[0]=R[j+1]； //R[0]不是哨兵，仅做暂存单元          R[j+1]=R[j]；          R[j]=R[0]；          exchange=TRUE； //发生了交换，故将交换标志置为真         }       if(!exchange) //本趟排序未发生交换，提前终止算法             return；     } //endfor(外循环)    } //BubbleSort 2直接选择排序的具体算法如下：　void SelectSort(SeqList R)　{   int i，j，k；   for(i=1;i<n;i++){//做第i趟排序(1≤i≤n-1)     k=i；     for(j=i+1;j<=n;j++) //在当前无序区R[i..n]中选key最小的记录R[k]       if(R[j].key<R[k].key)         k=j; //k记下目前找到的最小关键字所在的位置       if(k!=i){ //交换R[i]和R[k]         R[0]=R[i]；R[i]=R[k]；R[k]=R[0]； //R[0]作暂存单元        } //endif     } //endfor  } //SeleetSort3void lnsertSort(SeqList R)   { //对顺序表R中的记录R[1..n]按递增序进行插入排序    int i，j；    for(i=2;i<=n；i++) //依次插入R[2]，…，R[n]      if(R[i].key<R[i-1].key){//若R[i].key大于等于有序区中所有的keys，则R[i]                              //应在原有位置上        R[0]=R[i];j=i-1; //R[0]是哨兵，且是R[i]的副本        do{ //从右向左在有序区R[1．．i-1]中查找R[i]的插入位置         R[j+1]=R[j]； //将关键字大于R[i].key的记录后移         j-- ；         }while(R[0].key<R[j].key)； //当R[i].key≥R[j].key时终止        R[j+1]=R[0]； //R[i]插入到正确的位置上       }//endif   }//InsertSort