查找:
- 查找数组中下标的位置:
int fun( int *s, int x)
{
int i;
for(i=0;i<N;i++)
if(s[i]==x)
return i;
return -1;
}
- 查找最小值或最大值:
void fun (int *dp,int n,int upordown)
{
int i,temp,index=0;
if(n==0) return ;
for(i=1;i<n;i++)
if(upordown==0&&dp[i]<dp[index]||upordown==1&&dp[i]>dp[index])
index=i;
if(index!=0)
{
temp=dp[index];
dp[index]=dp[0];
dp[0]=temp;
}
}
排序:
- 去首尾后按值降序排:
void fun(char *s,int num)
{
int i,j;
char ch;
for(i=1;i<6;i++)
for(j=i+1;j<6;j++)
if(s[i]<s[j])
{
ch=s[i];
s[i]=s[j];
s[j]=ch;
}
}
- 降序排序:
typedef struct
{ char num[10];
int s;
} STREC;
void fun( STREC a[] )
{
int i,j;
STREC t;
for(i=0;i<N;i++)
for(j=i+1;j<N;j++)
if(a[i].s<a[j].s)
{
t=a[i];
a[i]=a[j];
a[j]=t;
}
}