结构体联系车辆信息输入排序
main.c :
#include "paixu.h"
int main()
{
int n,num;
CarTypeDef Num[5];
for (int i=0;i<5;i++)
{
scanf("%s",Num[i].name);
scanf(" %s",Num[i].colour);
scanf(" %d",&Num[i].price);
}
num=Max_Price(Num,5);
output(Num,5);
printf("价格最贵的车辆序号为:%d \n车辆信息:\n",num);
output2(Num[4]);
}
paixu.c
#include "paixu.h"
void output(CarTypeDef num[],int i)
{
for(i=0;i<5;i++)
{
printf("%d、 品牌=%s 颜色=%s 价格=%d\n",i+1,num[i].name,num[i].colour,num[i].price);
}
}
void output2(CarTypeDef num)
{
printf("品牌=%s 颜色=%s 价格=%d\n",num.name,num.colour,num.price);
}
int Max_Price(CarTypeDef Car[],char n)
{
int i,j,Max_num=0,Max_value;
CarTypeDef temp;
for(i=1;i<n;i++)
{
for(j=0;j<n-i;j++)
{
if((Car[j].price)>(Car[j+1].price))
{
if((Max_value<Car[j].price)||(Max_num==0))
{
Max_value=Car[j].price;
Max_num=j;
}
temp=Car[j];
Car[j]=Car[j+1];
Car[j+1]=temp;
}
}
}
return Max_num+1;
}
paixu.h
#ifndef _PAIXU_H
#define _PAIXU_H
#include <stdio.h>
#include <string.h>
typedef struct
{
char name[20];
char colour[10];
int price;
}CarTypeDef;
void output(CarTypeDef num[],int i);
void output2(CarTypeDef num);
int Max_Price(CarTypeDef Car[],char n);
#endif
