當前位置:首頁 » 編程語言 » 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);
}

熱點內容
linux命令行ftp 發布:2025-03-19 09:25:08 瀏覽:311
androideclipse的項目 發布:2025-03-19 09:25:03 瀏覽:110
php函數this 發布:2025-03-19 09:23:41 瀏覽:524
javalinux路徑 發布:2025-03-19 09:23:35 瀏覽:188
柴油乘用炮哪個配置性價比高 發布:2025-03-19 09:17:56 瀏覽:487
安卓如何取消鴻蒙升級提醒 發布:2025-03-19 09:17:04 瀏覽:621
清空本地緩存在哪 發布:2025-03-19 09:16:27 瀏覽:160
東方歸言錄日服賬號密碼如何設置 發布:2025-03-19 09:11:27 瀏覽:252
vue前台緩存組件 發布:2025-03-19 09:11:27 瀏覽:747
英雄聯盟手游用什麼安卓手機 發布:2025-03-19 08:59:58 瀏覽:933