當前位置:首頁 » 編程語言 » 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系統裝虛擬機 發布:2025-03-19 02:10:05 瀏覽:236
android自動解鎖 發布:2025-03-19 02:10:05 瀏覽:699
linuxforusbdevice 發布:2025-03-19 02:09:49 瀏覽:512
易達腳本 發布:2025-03-19 02:08:31 瀏覽:534
oracle給存儲過程授權 發布:2025-03-19 02:08:26 瀏覽:850
密碼M怎麼畫 發布:2025-03-19 02:03:41 瀏覽:109
java輸出到文件 發布:2025-03-19 01:49:07 瀏覽:432
光遇國際服安卓和蘋果如何互通 發布:2025-03-19 01:43:03 瀏覽:319
如何加密應用 發布:2025-03-19 01:42:04 瀏覽:620
lol伺服器人數怎麼擠 發布:2025-03-19 01:29:19 瀏覽:840