使用结构体实现信息查询
/***************************************
功能:使用结构体实现信息查询
日期:2014年12月10日14:46:02
**************************************/
#include<stdio.h>
#include<string.h>
#define MAX 101
struct aa//定义结构体aa用来存储电话号码和姓名
{
char name[15];
char tel[15];
};
int readin(struct aa *a)//创建电话号码和姓名,并存入结构体中
{
int i = 0, n = 0;
while(1)
{
scanf("%s",a[i].name);//输入姓名
if (!strcmp(a[i].name, "#"))
break;
scanf("%s",a[i].tel);//输入电话号码
i++;
n++; //记录的条数
}
return n; //返回的条数
}
void search(struct aa *b, char *x, int n)//用来查询输入的姓名所对应的电话号码
{
int i = 0;
while(1)
{
if (!strcmp(b[i].name, x)) //查找与输入姓名相匹配的记录
{
printf("name:%s tel:%s\n", b[i].name,b[i].tel );//打印查到的姓名所对应的电话号码
break; //终止当前的动作
}
else
i++;
n--;
if (n == 0)
{
printf("No found!");
break;
}
}
}
int main()
{
struct aa s[MAX];//定义了一个结构体数组,长度为101
int num;
char name[15];
num = readin(s);//调用函数 readin() ,创建(姓名+电话)信息的个数
printf("input the name:");
scanf("%s",name);
search(s, name, num);
return 0;
}
/*****************************
qwe
133321654
qaz
3254562
wsx
369541102
#
input the name:wsx
name:wsx tel:369541102
Press any key to continue
******************************/