一个通信录中包括联系人(共n个人,0<n<=10)的编号、姓名、电话。请根据姓名查找到相关信息(输出姓名和电话信息,二者之间以冒号间隔,输出一条信息后换行),注意可能存在同名的情况,若同名,则输出所有同名人的信息。若查无此人,输出“no”。请在每对填空之间填写内容。 输入格式: 第一行输入n(0<n<=10),之后输入n行的联系人信息(包括编号、姓名和电话,其中姓名、电话两个成员的数据不含空格),最后一行输入要查找的人的姓名。 输出格式: 输出查找到的姓名和电话信息,二者之间以冒号间隔,输出一条信息后换行;若查无此人,输出“no”。 输入样例: 4 1 zhangsan 13912345678 2 lisi 13866666666 3 wangwu 18999999999 4 zhaoliu 15188888888 lisi 输出样例: lisi:13866666666 ###已有代码 #include <stdio.h> #include <string.h> struct LinkMan { int num; char name[20],tel[20]; }; int main() { struct LinkMan Link[10]; char s[20]; /*用来存放待查找的联系人姓名*/ int i,n,flag=0; scanf("%d",&n); for(i=0;i<n;i++) /*1*/ /*1*/; scanf("%s",s); /*2*/ /*2*/ return 0; }
时间: 2024-01-08 07:03:11 浏览: 170
#include <stdio.h>
#include <string.h>
struct LinkMan {
int num;
char name[20],tel[20];
};
int main() {
struct LinkMan Link[10];
char s[20]; /*用来存放待查找的联系人姓名*/
int i,n,flag=0;
scanf("%d",&n);
for(i=0;i<n;i++) {
scanf("%d %s %s",&Link[i].num,Link[i].name,Link[i].tel);
}
scanf("%s",s);
for(i=0;i<n;i++) {
if(strcmp(Link[i].name,s)==0) {
printf("%s:%s\n",Link[i].name,Link[i].tel);
flag=1;
}
}
if(flag==0) {
printf("no\n");
}
return 0;
}
相关问题
C语言:一个通信录中包括联系人(共n个人,0<n<=10)的编号、姓名、电话。请根据姓名查找到相关信息(输出姓名和电话信息,二者之间以冒号间隔,输出一条信息后换行),注意可能存在同名的情况,若同名,则输出所有同名人的信息。若查无此人,输出“no”。请在每对填空之间填写内容。 输入格式: 第一行输入n(0<n<=10),之后输入n行的联系人信息(包括编号、姓名和电话,其中姓名、电话两个成员的数据不含空格),最后一行输入要查找的人的姓名。 输出格式: 输出查找到的姓名和电话信息,二者之间以冒号间隔,输出一条信息后换行;若查无此人,输出“no”。
以下是C语言的代码实现:
```c
#include <stdio.h>
#include <string.h>
struct Contact {
int id;
char name[20];
char phone[20];
};
int main() {
int n;
struct Contact contacts[10];
char search_name[20];
// 输入联系人信息
scanf("%d", &n);
for (int i = 0; i < n; i++) {
scanf("%d %s %s", &contacts[i].id, contacts[i].name, contacts[i].phone);
}
// 输入要查找的姓名
scanf("%s", search_name);
// 查找联系人信息
int found = 0;
for (int i = 0; i < n; i++) {
if (strcmp(contacts[i].name, search_name) == 0) {
printf("%s:%s\n", contacts[i].name, contacts[i].phone);
found = 1;
}
}
// 若查无此人,输出“no”
if (!found) {
printf("no\n");
}
return 0;
}
```
输入格式示例:
```
3
1 Alice 123456789
2 Bob 987654321
3 Alice 111111111
Alice
```
输出格式示例:
```
Alice:123456789
Alice:111111111
```
一个通信录中包括联系人(共n个人,0<n<=10)的编号、姓名、电话。请根据姓名查找到相关信息(输出姓名和电话信息,二者之间以冒号间隔,输出一条信息后换行),注意可能存在同名的情况,若同名,则输出所有同名人的信息。若查无此人,输出“no”。请在每对填空之间填写内容
输入格式:
第1行,一个正整数n。
第2到n+1行,每行包括编号、姓名、电话三个字段,其中姓名和电话之间以“: ”间隔。
第n+2行,一个正整数m(0<m<=10),表示查询次数。
第n+3到n+m+2行,每行一个待查找的姓名。
输出格式:
m行,每行输出一个或多个同名人的信息,格式见样例。若查无此人,则输出“no”,无需换行。
输入样例:
5
1 Tom: 123456
2 Jerry: 123456
3 Tom: 789012
4 Mike: 654321
5 Jerry: 246810
3
Tom
Jerry
Bob
输出样例:
Tom: 123456
Tom: 789012
Jerry: 123456
Jerry: 246810
no
阅读全文