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

熱點內容
資料庫的關系符號 發布:2025-08-24 16:02:29 瀏覽:625
sqlserver表值函數 發布:2025-08-24 15:56:27 瀏覽:553
linuxc內存泄露 發布:2025-08-24 15:54:30 瀏覽:111
python讀取文件每一行 發布:2025-08-24 15:32:27 瀏覽:79
abbplc編程軟體 發布:2025-08-24 15:31:43 瀏覽:206
蘋果關閉密碼如何設置新密碼 發布:2025-08-24 14:28:41 瀏覽:298
安卓機安裝包在哪裡找 發布:2025-08-24 14:09:32 瀏覽:958
密碼本時鍾如何打開 發布:2025-08-24 13:45:48 瀏覽:721
安卓微信分身怎麼弄 發布:2025-08-24 13:45:48 瀏覽:942
attributejava從 發布:2025-08-24 13:16:30 瀏覽:27