//指针数组的例子
// 结构体内容排序
#include<stdio.h>
#define N 4
struct worker
{
char name[10];
int num;
}real[N];
void main()
{
struct worker *p[N]={&real[0],&real[1],&real[2],&real[3]};
/*struct worker *p[N];
for(int i=0;i<N;i++)
p[i]=&real[i];*/
struct worker temp;
for(int i=0;i<N;i++)
scanf("%d,%s",&p[i]->num,p[i]->name);//输入顺序不能交换,否则都当成字符读入num
for(i=0;i<N-1;i++)
for(int j=0;j<N-1-i;j++)
{
if((p[j]->num)>(p[j+1]->num))
temp=*p[j]; //注意*号前面要留有空格
*p[j]=*p[j+1];
*p[j+1]=temp;
}
for(i=0;i<N;i++)
printf("%d:%s/n",p[i]->num,p[i]->name);
}
指针数组
最新推荐文章于 2016-09-28 21:21:20 发布