数据结构课程设计----车牌查询问题

数据结构课程设计----车牌查询问题,第1张

概述本文章向大家介绍数据结构课程设计----车牌查询问题,主要包括数据结构课程设计----车牌查询问题使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

汽车牌照的快速查询    对一组汽车牌照进行排序和查找。 基本要求:    

(1)利用排序算法对汽车牌照进行排序;    

(2)采用折半查找思想完成查找。

测试数据要求:     测试的数据不得少于50个,不得有重复的牌照。车牌号中可以是数字和字符的组合,车牌号可以人工输入,也可以自动生成。  

#include

#include

#include

#include

typedef char Car[10];

typedef struct

{

Car *elem;

int length;

}linkList;

voID input(linkList &L)

{

printf("请输入待排序车辆的数目:n");

scanf("%d",&L.length);

L.elem=(Car*)malloc(L.length*sizeof(Car));

printf("请依次输入车辆的车牌号:n");

for(int i=0;i

scanf("%s",L.elem[i]);

}

voID BubbleSort(linkList &L)

{//对车牌号进行排序

char a[20];

int i,j;

int flag=1;

for(i=0;i

{

flag=0;

for(j=0;j

if(strcmp(L.elem[j],L.elem[j+1])>0)

{

strcpy(a,L.elem[j]);

strcpy(L.elem[j],L.elem[j+1]);

strcpy(L.elem[j+1],a);

flag=1;

}

}

}

voID Binsrch(linkList &L,char *a)

{//利用折半查找查找车牌号是否存在

int low,high,mID;

int flag=1;

low=0;

high=L.length-1;

while(low<=high&&flag)

{

mID=(low+high)/2;

if(strcmp(a,L.elem[mID])==0)

{

printf("查找的该车牌号是第%d个。n",mID+1);

flag=0;

}

else if(strcmp(a,L.elem[mID])>0)

{

low=mID+1;

mID=(low+high)/2;

}

else

{

high=mID-1;

mID=(low+high)/2;

}

}

if(flag)

printf("查找的车牌号不存在。n");

}

voID Output(linkList &L)

{

int i;

for(i=0;i

printf("%sn",L.elem[i]);

}

int main()

{

int i;

linkList L;

char car[20];

while(1)

{

printf("————————请选择 *** 作——————————n");

printf("——1.输入信息 2.车牌号排序 3. 车牌号查询 0.退出——n");

scanf("%d",&i);

switch(i)

{

case 1:

input(L);

break;

case 2:

printf("车牌号的排序结果为:n");

BubbleSort(L);

Output(L);

break;

case 3:

printf("输入要查找的车牌号:n");

getchar();

gets(car);

Binsrch(L,car);

break;

case 0:

return 0;

}

}

return 0;

}

总结

以上是内存溢出为你收集整理的数据结构课程设计----车牌查询问题全部内容,希望文章能够帮你解决数据结构课程设计----车牌查询问题所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1264518.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-08
下一篇 2022-06-08

发表评论

登录后才能评论

评论列表(0条)

保存