当前位置:首页 » 编程语言 » 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);
}

热点内容
小米如何显示wifi密码 发布:2025-03-18 21:27:07 浏览:751
python中的ord 发布:2025-03-18 21:20:11 浏览:323
qq网源码 发布:2025-03-18 21:19:19 浏览:557
收款源码 发布:2025-03-18 21:18:39 浏览:752
android小部件 发布:2025-03-18 20:59:56 浏览:229
现在下载什么软件要账号密码 发布:2025-03-18 20:55:43 浏览:864
vivo手机视频放在哪个文件夹 发布:2025-03-18 20:55:42 浏览:572
c语言的返回值 发布:2025-03-18 20:51:21 浏览:948
iisftpwin10 发布:2025-03-18 20:27:50 浏览:956
mysql执行存储过程语句 发布:2025-03-18 20:13:00 浏览:957