include cstdlib 或 #include stdlib.h
創(chuàng)新互聯(lián)公司基于成都重慶香港及美國等地區(qū)分布式IDC機(jī)房數(shù)據(jù)中心構(gòu)建的電信大帶寬,聯(lián)通大帶寬,移動(dòng)大帶寬,多線BGP大帶寬租用,是為眾多客戶提供專業(yè)托管服務(wù)器報(bào)價(jià),主機(jī)托管價(jià)格性價(jià)比高,為金融證券行業(yè)服務(wù)器托管,ai人工智能服務(wù)器托管提供bgp線路100M獨(dú)享,G口帶寬及機(jī)柜租用的專業(yè)成都idc公司。
qsort(void* base, size_t num, size_t width, int(*)compare(const void* elem1, const void* elem2))
參數(shù)表
*base: 待排序的元素(數(shù)組,下標(biāo)0起)。
num: 元素的數(shù)量。
width: 每個(gè)元素的內(nèi)存空間大小(以字節(jié)為單位)。可用sizeof()測(cè)得。
int(*)compare: 指向一個(gè)比較函數(shù)。*elem1 *elem2: 指向待比較的數(shù)據(jù)。
比較函數(shù)的返回值
返回值是int類型,確定elem1與elem2的相對(duì)位置。
elem1在elem2右側(cè)返回正數(shù),elem1在elem2左側(cè)返回負(fù)數(shù)。
控制返回值可以確定升序/降序。
產(chǎn)生隨機(jī)數(shù)的函數(shù)也是rand(),不是rank().
#include stdio.h
char c,s[10];
int n;
void pern(int k)
{int i;
if(k==n)
printf("%s\n",s+1);
else
for(i=k;i=n;i++)
{c=s[k];s[k]=s[i];s[i]=c;
pern(k+1);
c=s[k];s[k]=s[i];s[i]=c;
}
}
int main()
{ int i;
scanf("%d",n);
for(i=1;i=n;i++)
s[i]='0'+i;
pern(1);
return 0;
}
給你一個(gè)直接插入排序
#include "stdio.h"
void InsertSort(int a[], int left, int right) {//對(duì)數(shù)組a從下標(biāo)為left到right區(qū)域進(jìn)行直接插入排序
int i, j, tmp;
for(i = left + 1; i = right; i++) {
for(j = i - 1, tmp = a[i]; j = left tmp a[j]; j++)
a[j + 1] = a[j];
a[j + 1] = tmp;
}
}
void main( ) {
int i, n, a[100];
scanf("%d", n);
for(i = 0; i n; i++)
scanf("%d", a[i]);
InsertSort(a, 0, n - 1);
printf("\n");
for(i = 0; i n; i++) printf("%d\t", a[i]);
}
#includestdio.h
int?com(int?m,int?n)//m中取n個(gè)
{
int?i,j,sum=1;
for?(i=m,j=0;jn;j++,i--)
{
sum=sum*i/(j+1);
}
return?sum;
}
int?main()
{
int?i;
i=com(5,3);
printf("%d",i);
return?0;
}