#include<stdio.h>
#include<math.h>
#include<stdlib.h>
#include<time.h>
struct abc
{
int a;
int b;
int c;
};
int main(void)
{
abc A[100],*p[100],*tmp;
int i,j;
for(i=0;i<100;i++)//给指针数组赋值
{
p[i]=&A[i];
}
for(i=0;i<100;i++)//随机给结构体中的变量赋值
{
A[i].a=abs((rand()*time(NULL))%10);
A[i].b=abs((rand()*time(NULL))%10);
A[i].c=abs((rand()*time(NULL))%10);
}
for(i=0;i<99;i++)//排序部分使用了最简单的冒泡排序。。。。
{
for(j=i+1;j<100;j++)
{
if(p[i]->a<p[j]->a)
{
tmp=p[i];
p[i]=p[j];
p[j]=tmp;
}
}
}
for(i=0;i<100;i++)//将排序好的指针数组输出
{
printf("%d,",p[i]->a);
printf("%d,",p[i]->b);
printf("%d/n",p[i]->c);
}
return 0;
}
结构体数组排序输出的省事办法。。。。
最新推荐文章于 2021-11-16 10:00:09 发布