数据结构 Day 2

数据结构 Day 2_第1张图片

#include
#include
typedef struct{
    char name[10];
    char color[10];
    int price;
}Car,*Car_t;
Car_t create(int n){
    Car_t p=(Car_t)malloc(sizeof(Car)*n);
    if(p==NULL)
        return NULL;
    return p;
}
void input(Car_t p,int n){
    int i;
    for(i=0;i         printf("please input:\n");
        scanf("%s%s%d",(p+i)->name,(p+i)->color,&(p+i)->price);
    }
}

void Sort(Car_t p,int n){
    int i,j;
    Car tmp;
    for(i=0;i         for(j=0;j             if((p+j)->price>(p+j+1)->price){
                tmp=*(p+j);
                *(p+j)=*(p+j+1);
                *(p+j+1)=tmp;
            }
        }
    }
}

void output(Car_t p,int n){
    int i;
    for(i=0;i         printf("%s\t %s\t %d\t\n",(p+i)->name,(p+i)->color,(p+i)->price);
    }
}

Car_t free_space(Car_t p){
    if(p==NULL)
        return NULL;
    free(p);
    p=NULL;
    return p;
}

int main(){
    int n;
    printf("please enter 'n':\n");
    scanf("%d",&n);
    Car_t p=create(n);
    input(p,n);
    Sort(p,n);
    output(p,n);
    p=free_space(p);
    return 0;
    
}

运行结果如图:

数据结构 Day 2_第2张图片

知识结构:

数据结构 Day 2_第3张图片

 

你可能感兴趣的:(数据结构,java,开发语言)