選擇法升序排序函數(shù)如下:
“只有客戶(hù)發(fā)展了,才有我們的生存與發(fā)展!”這是創(chuàng)新互聯(lián)的服務(wù)宗旨!把網(wǎng)站當(dāng)作互聯(lián)網(wǎng)產(chǎn)品,產(chǎn)品思維更注重全局思維、需求分析和迭代思維,在網(wǎng)站建設(shè)中就是為了建設(shè)一個(gè)不僅審美在線,而且實(shí)用性極高的網(wǎng)站。創(chuàng)新互聯(lián)對(duì)網(wǎng)站設(shè)計(jì)制作、做網(wǎng)站、網(wǎng)站制作、網(wǎng)站開(kāi)發(fā)、網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站優(yōu)化、網(wǎng)絡(luò)推廣、探索永無(wú)止境。
void?fun(int?*p,int?n){
int?i,j,k;
for(i=0;in;i++){
for(k=i,j=k+1;jn;j++)
if(p[k]p[j])
k=j;
if(k-i)
j=p[k],p[k]=p[i],p[i]=j;
}
}
答案和樓上一樣
void fun(int a[ ],int n)
{
int i,j,k,temp;
for(i=0;in-1;i++)
{ k=i; //k的作用是記錄要交換的位置
for(j=i+1;j n;j++)
if(a[j]a[k]) k=j; //這個(gè)循環(huán)的作用是找出數(shù)組第i個(gè)元素以后最小數(shù)據(jù)
if( k != i ) //如果k不等于i,說(shuō)明a[i]不是數(shù)組第i位到第n位中最小的元素,交換后讓其成為最小的
{ temp=a[k];
a[k]=a[i];
a[i]=temp;
}
}
}
代碼:
#include?stdio.h
void?fun(char?s[100]){
char?str[100],t;
int?i,j=0,n;
for(i=0;s[i];i++){
if(i%2==1){
str[j]=s[i];
j++;
}
}
str[j]='\0';
printf("排序前:%s\n",str);
n=j;
for(i=0;in-1;i++){
?for(j=i+1;jn;j++){
if(str[i]str[j]){
t=str[i];
str[i]=str[j];
str[j]=t;
}
}
}
printf("排序后:%s\n",str);
}
void?main(){
char?str[]="Therearethreemen.";
fun(str);
}
運(yùn)行:
排序有挺多方法的,例如:冒泡排序法、選擇排序法
以下使用選擇排序
#include?stdio.h
void?fun(int?a[],?int?n)
{
int?i,j,k,tmp;
for(i=0;in-1;?i++)
{
k=i;
for(j=i+1;jn;++j)
if(a[j]a[k])?k=j;
if(k!=i)
{
tmp=a[k];a[k]=a[i];a[i]=tmp;
}
}
}
int?main()
{
int?a[10];
int?i;
for(i=0;?i10;?i++)?scanf("%d",?a[i]);
fun(a,10);
for(i=0;?i10;?i++)?printf("%d\n",?a[i]);
printf("第二大的數(shù)是:%d",a[1]);
return?0;
}