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

热点内容
mysql执行存储过程语句 发布:2025-03-18 20:13:00 浏览:955
android控件移动 发布:2025-03-18 20:05:29 浏览:698
新东方课程缓存路径 发布:2025-03-18 20:00:20 浏览:84
登录一个新ip的服务器怎么登录 发布:2025-03-18 19:49:13 浏览:961
户户通遥控器隐藏密码多少 发布:2025-03-18 19:43:23 浏览:196
erlang数据库 发布:2025-03-18 19:35:17 浏览:647
华硕手机配置及价格如何 发布:2025-03-18 19:34:34 浏览:582
安卓模拟器端口号怎么查 发布:2025-03-18 19:34:19 浏览:760
新建文件夹mp4magnet 发布:2025-03-18 19:34:17 浏览:933
车六方编程 发布:2025-03-18 19:32:53 浏览:301