当前位置:首页 » 编程语言 » c语言按姓名查找

c语言按姓名查找

发布时间: 2023-08-13 04:15:26

㈠ 用c语言输入20个人的名字,然后输入一个人的名字,查找这个人在不在这20个人中

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#defineLENGTH20
#defineMAX_NAME_LENGTH10//最大姓名长度
intsearchMan(char*nameBag[],char*name,intbagScale);//在nameBag中查找name,bagScal为nameBag中包含的姓名数。找到返回数组下标,否则返回-1
intmain(intargc,char*argv[]){
char*nameBag[LENGTH],*name;//LENGTH长度的数组nameBag,数组元素类型为char*
intcount=0,pos=-1;
printf("请输入%d个姓名: ",LENGTH);
/*循环读入名字*/
while(count<LENGTH){
name=(char*)malloc(sizeof(char)*MAX_NAME_LENGTH);//动态开辟存储空间,名称多余的截断
scanf("%s",name);
name[MAX_NAME_LENGTH-1]='';
nameBag[count++]=name;
}
/*显示输入的名称,逆序*/
while(count--)
printf("name[%-2d]=*%s* ",count,nameBag[count]);
printf("请输入待查找姓名: ");
name=(char*)malloc(sizeof(char)*MAX_NAME_LENGTH);
scanf("%s",name);
name[MAX_NAME_LENGTH-1]='';
if((pos=searchMan(nameBag,name,LENGTH))>=0){
printf("该姓名存在,位置是%d",pos+1);
}else
printf("该姓名不存在");

count=0;
while(count<LENGTH){
free(nameBag[count]);
nameBag[count++]=NULL;
}

free(name);
name=NULL;
return(0);
}
intsearchMan(char*nameBag[],char*name,intbagScale){
while(bagScale--){
if(strcmp(nameBag[bagScale],name)==0)
return(bagScale);
}
return(-1);
}

热点内容
linuxfork进程 发布:2025-03-18 17:28:09 浏览:841
c远程桌面源码 发布:2025-03-18 17:26:20 浏览:244
brd源码 发布:2025-03-18 17:16:38 浏览:943
腾讯云使用代理服务器ip 发布:2025-03-18 17:14:19 浏览:897
顺丰同城骑士安卓苹果哪个抢单快 发布:2025-03-18 17:11:50 浏览:294
das直连存储 发布:2025-03-18 17:04:53 浏览:990
win7文件夹收藏 发布:2025-03-18 16:58:56 浏览:979
服务器地址区域华北和华南 发布:2025-03-18 16:52:17 浏览:874
用友的服务器如何卸载 发布:2025-03-18 16:51:25 浏览:730
tar打包文件夹 发布:2025-03-18 16:49:21 浏览:435