以下是引用wp231957在2012-11-16 19:17:33的发言:
我可不想做搬砖人呢
搬砖的默默流下了伤心的泪水我可不想做搬砖人呢

程序代码:////////////////////////////////////////////////////////////////////////////////////
#include <stdio.h>
int maxa(int s[],int n)
{
if(n==0) return s[n];
int a=s[0];
int b=maxa(s+1,n-1);
return a>b?a:b;
}
//数组按大到小排序
//bug:源数组中不能有相同数据
int main ()
{
int source[10]={1,3,5,7,9,8,6,4,11,10};
int dest[10];
int i,j;
for(i=0;i<10;i++)
{
dest[i]=maxa(source,9);
for(j=0;j<10;j++) if(source[j]==dest[i]) source[j]=-1;
}
for(i=0;i<10;i++) printf("%3d",dest[i]);
printf("\n");
return 0;
}
/////////////////////////////////////////////////////////////////////////////////
#include <stdio.h>
//数组按大到小排序
//bug:源数组中不能有相同数据
struct Count
{
int c;
int count;
};
int main ()
{
int source[10]={1,3,5,7,9,8,6,4,11,10};
struct Count conter[100];
int i;
for(i=0;i<100;i++)
{
conter[i].c=i;
conter[i].count =0;
}
for(i=0;i<10;i++) conter[source[i]].count ++;
for(i=99;i>=0;i--) if(conter[i].count) printf("%3d",conter[i].c);
printf("\n");
return 0;
}
/////////////////////////////////////////////////////////////////////////////////

程序代码:////////////////////////////////////////////////////////////////////////////////////
#include <stdio.h>
int maxa(int s[],int n)
{
if(n==0) return s[n];
int a=s[0];
int b=maxa(s+1,n-1);
return a>b?a:b;
}
//数组按大到小排序
//
int main ()
{
int source[10]={1,3,5,7,9,8,6,4,11,10};
int dest[10];
int i,j;
for(i=0;i<10;i++)
{
dest[i]=maxa(source,9);
for(j=0;j<10;j++) if(source[j]==dest[i]){ source[j]=-1;
break;}
}
for(i=0;i<10;i++) printf("%3d",dest[i]);
printf("\n");
return 0;
}
/////////////////////////////////////////////////////////////////////////////////
#include <stdio.h>
//数组按大到小排序
//
struct Count
{
int c;
int count;
};
int main ()
{
int source[10]={1,3,5,7,9,8,6,4,11,10};
struct Count conter[100];
int i;
for(i=0;i<100;i++)
{
conter[i].c=i;
conter[i].count =0;
}
for(i=0;i<10;i++) conter[source[i]].count ++;
for(i=99;i>=0;i--) while(conter[i].count--) printf("%3d",conter[i].c);
printf("\n");
return 0;
}
/////////////////////////////////////////////////////////////////////////////////

程序代码:#include<stdio.h>
int main(){
int source[]={1,3,5,7,9,8,6,4,11,10,12,12,45,68,45};
int length=sizeof source/sizeof source[0];
for(int i=0;i<length;++i){
for(int j=i+1;j<length;++j){
int tem;
if(source[i]<source[j]){
tem=source[i];
source[i]=source[j];
source[j]=tem;
}
}
printf("%d ",source[i]);
}
return 0;
}排序了?没排?

程序代码:#include<stdio.h>
int main(){
int source[]={1,3,5,7,9,8,6,4,11,10,12,12,45,68,45};
int length=sizeof source/sizeof source[0];
for(int i=0;i<length;++i){
int tem1=source[i];
for(int j=i+1;j<length;++j){
int tem2;
if(tem1<source[j]){
tem2=tem1;
tem1=source[j];
source[j]=tem2;
}
}
printf("%d ",tem1);
}
return 0;
}贴错代码了,本来要贴的是这个
