帮你改好了,又改进了一下
/*实现手机通讯录的简单功能*/
#include
#include
#include
/*手机通讯录结构定义*/
struct friends_list{
char name[10];
int age;
char telephone[13];
};
int Count=0;
void new_friend(struct friends_list friends[]);
void search_friend(struct friends_list friends[],char *name);
int main(void)
{
int choice,r;
char name[10];
struct friends_list friends[50];
do{
system("cls");
printf("********手机通讯录*********\n");
printf("* 1.新 建 *\n");
printf("* 2.查 询 *\n");
printf("* 0.退 出 *\n");
printf("***************************\n");
printf("请选择:\n");
scanf("%d",&choice);
system("cls");
switch(choice){
case 1:
new_friend(friends);
break;
case 2:
printf("请输入要查找的联系人姓名:");
scanf("%s",name);
search_friend(friends,name);
break;
case 0:
exit(0);
break;
default:
{
printf("输入无效!请重新输入!\n");
break;
}
}
printf("输入0结束流程,输入1返回主界面:\n");
scanf("%d",&r);
if(r==0)
break;
else
continue;
}while(choice!=0);
printf("谢谢使用通讯录功能!\n");
return 0;
}
/*新建联系人*/
void new_friend(struct friends_list friends[])
{
struct friends_list f;
if(Count==50){
printf("通讯录已满!\n");
return;
}
printf("请输入新联系人的姓名:");
scanf("%s",f.name);
printf("请输入新联系人的年龄:");
scanf("%s",&f.age);
printf("请输入新联系人的联系电话:");
scanf("%s",f.telephone);
friends[Count]=f;
Count++;
}
/*查询联系人*/
void search_friend(struct friends_list friends[],char *name)
{
int i,flag=0;
if(Count==0){
printf("通讯录是空的!\n");
return;
}
for(i=0;i
flag=1;
break;
}
if(flag){
printf("姓名:%s\t",friends[i].name);
printf("年龄:%d\t",friends[i].age);
printf("电话:%s\n",friends[i].telephone);
}
else
printf("无此联系人!");
}
case 后面没有空格。加一个空格就可以了。
如
case 1 :
还有楼上的,shdxiang的回答也要,否则查询的结果中电话号码不对。
scanf("%s",&f.age); 改为
scanf("%d",&f.age); 就OK了