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

热点内容
c语言取随机数 发布:2025-02-06 02:46:57 浏览:863
uc缓存的视频卡住 发布:2025-02-06 02:17:05 浏览:144
解压同学介绍 发布:2025-02-06 02:13:10 浏览:776
icsftp 发布:2025-02-06 02:12:59 浏览:325
ftp跨域上传文件 发布:2025-02-06 02:09:22 浏览:822
非递归全排列算法 发布:2025-02-06 02:06:45 浏览:551
vs反编译dll 发布:2025-02-06 02:06:00 浏览:584
ubuntu设置ftp权限 发布:2025-02-06 01:54:07 浏览:599
奇瑞5哪个配置值得买 发布:2025-02-06 01:51:56 浏览:552
黑鲨手机哪里看安卓版本 发布:2025-02-06 01:36:04 浏览:803