版权声明:转载请附上此博客地址,谢谢 https://blog.csdn.net/qq_30796379/article/details/85051492
NO COPYING!
NO COPYING!
NO COPYING!
//Sinhaeng Hhjian
#include<bits/stdc++.h>
#define inf 0x3f3f3f3f
#define MAX 100
using namespace std;
const int maxn=1005;
char s[maxn][maxn];
void Sort(int n){
for(int i=1;i<n;i++)
for(int j=1;j<n-i;j++)
if(strcmp(s[j], s[j+1])>0){
char temp[maxn];
strcpy(temp, s[j]);
strcpy(s[j], s[j+1]);
strcpy(s[j+1], temp);
}
}
void BS(int n){
char x[maxn];
printf("请输入要查找的汽车牌照!\n");
scanf("%s", x);
int l=1, r=n, ans;
while(l<=r){
int m=l+r>>1;
if(strcmp(s[m], x)==0){
printf("查找结果是第%d个车牌!\n", m);
return;
}
if(strcmp(s[m], x)>0)
r=m-1;
else l=m+1;
}
printf("查找失败!\n");
return;
}
int main(){
int n;
printf("请输入汽车牌照的个数:");
scanf("%d", &n);
printf("请输入汽车牌照的信息:\n");
for(int i=1;i<=n;i++)
scanf("%s", s[i]);
Sort(n);
printf("排序结果为:\n");
for(int i=1;i<=n;i++)
printf("%s\n", s[i]);
BS(n);
return 0;
}