结构-04. 通讯录的录入与显示(10)

通讯录中的一条记录包含下述基本信息:朋友的姓名、出生日期、性别、固定电话号码、移动电话号码。 本题要求编写程序,录入N条记录,并且根据要求显示任意某条记录。

输入格式:

输入在第1行给出正整数N(<=10);随后N行,每行按照格式“姓名 生日 性别 固话 手机”给出一条记录。其中“姓名”是不超过10个字符、不包含空格的非空字符串;生日按“yyyy/mm/dd”的格式给出年月日;性别用“M”表示“男”、“F”表示“女”;“固话”和“手机”均为不超过15位的连续数字,前面有可能出现“+”。

在通讯录记录输入完成后,最后一行给出正整数K,并且随后给出K个整数,表示要查询的记录编号(从0到N-1顺序编号)。数字间以空格分隔。

输出格式:

对每一条要查询的记录编号,在一行中按照“姓名 固话 手机 性别 生日”的格式输出该记录。若要查询的记录不存在,则输出“Not Found”。

输入样例:

3
Chris 1984/03/10 F +86181779452 13707010007
LaoLao 1967/11/30 F 057187951100 +8618618623333
QiaoLin 1980/01/01 M 84172333 10086
2 1 7

输出样例:

LaoLao 057187951100 +8618618623333 F 1967/11/30
Not Found
 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 #include <iostream>
 4 #include <string.h>
 5 #include <string>
 6 #include <math.h>
 7
 8
 9 using namespace::std;
10
11 struct contact{
12     //朋友的姓名、出生日期、性别、固定电话号码、移动电话号码
13     char name[11];
14     char birth[30];
15     char sex;
16     char phone[20];
17     char mobile[20];
18 };
19 int main(){
20
21     int n;
22     scanf("%d",&n);
23     getchar();
24     struct contact a[n];
25     for(int i=0;i<n;i++)
26     {
27     char b[199];
28     gets(b);
29     sscanf(b,"%s %s %c %s %s",&a[i].name,&a[i].birth,&a[i].sex,&a[i].phone,&a[i].mobile);
30     //printf("%s %d/%2d/%2d %c %s %s",a[i].name,a[i].year,a[i].month,a[i].day,a[i].sex,a[i].phone,a[i].mobile);
31     }
32     int k;
33     scanf("%d",&k);
34     for(int j=0;j<k;j++)
35     {
36         int i;
37         scanf("%d",&i);
38         if(i>=n||i<0)printf("Not Found\n");
39         else{
40         printf("%s %s %s %c %s\n",a[i].name,a[i].phone,a[i].mobile,a[i].sex,a[i].birth);
41         }
42     }
43     return 0;
44 }
时间: 2024-12-20 11:54:38

结构-04. 通讯录的录入与显示(10)的相关文章

*结构-04. 通讯录的录入与显示

1 /* 2 * Main.c 3 * F4-结构-04. 通讯录的录入与显示 4 * Created on: 2014年8月26日 5 * Author: Boomkeeper 6 *******部分通过********* 7 */ 8 9 #include <stdio.h> 10 /** 11 * 通讯录结构体 12 */ 13 struct contact { 14 char name[11]; //“姓名”是不超过10个字符 15 char birthday[11]; //生日按“y

11-1. 通讯录的录入与显示(10)

通讯录中的一条记录包含下述基本信息:朋友的姓名.出生日期.性别.固定电话号码.移动电话号码. 本题要求编写程序,录入N条记录,并且根据要求显示任意某条记录. 输入格式: 输入在第1行给出正整数N(<=10):随后N行,每行按照格式“姓名 生日 性别 固话 手机”给出一条记录.其中“姓名”是不超过10个字符.不包含空格的非空字符串:生日按“yyyy/mm/dd”的格式给出年月日:性别用“M”表示“男”.“F”表示“女”:“固话”和“手机”均为不超过15位的连续数字,前面有可能出现“+”. 在通讯录

通讯录的录入与显示

通讯录中的一条记录包含下述基本信息:朋友的姓名.出生日期.性别.固定电话号码.移动电话号码.本题要求编写程序,录入N条记录,并且根据要求显示任意某条记录. 输入格式: 输入在第1行给出正整数N(<=10):随后N行,每行按照格式“姓名 生日 性别 固话 手机”给出一条记录.其中“姓名”是不超过10个字符.不包含空格的非空字符串:生日按“yyyy/mm/dd”的格式给出年月日:性别用“M”表示“男”.“F”表示“女”:“固话”和“手机”均为不超过15位的连续数字,前面有可能出现“+”. 在通讯录记

仿IOS通讯录效果,实现获取手机通讯录、字母排序显示、搜索联系人、拨打电话

1.使用UITableView,实现联系人字母排序.点击字母跳转显示联系人组目录: 2.使用UISearchController,实现联系搜索,动态显示符合查询的联系人: 3.点击通讯录列表项,显示联系人信息(使用自定义模式化窗口类似与UIAlertView,使用UIwindow实现),点击拨号,可以直接拨打电话: 4.实现获取手机通讯录里面的联系人信息: 详情见资源:http://download.csdn.net/detail/u011622479/9505751 效果图如下: 获取联系人:

解决dede搜索页面只能显示10条信息解决方案

解决dede搜索页面只能显示10条信息解决方案,感觉显示的信息太少,这时就要想办法去解决一下.看看有什么好办法来解决一下这个问题. dede搜索页模板中,默认只能显示10条记录. 打开dede搜索页模板search.htm,发现标签搜索{dede:list perpage='10'} 即使修改了参数,如{dede:list perpage='20'},发现dede搜索页搜索的结果依然是一页10条记录. 两种方法可以解决这个问题: 1.可以在dede模板的开始搜索按钮前加入<input type=

Ubuntu 14.04怎样升级到Ubuntu 14.10

Ubuntu 14.04怎样升级到Ubuntu 14.10 Ubuntu 14.10 Utopic Unicorn 将在10月23日正式发布,9月25日最终测试版本已经发布,Ubuntu 14.10 RC 候选版本也将在10月16日发布,一周之后正式版本发布. 尽管现在 Ubuntu 14.10 还不是稳定版本,但对于日常使用已经完全可以使用了. 那么怎么升级 Ubuntu 14.04 到 Ubuntu 14.10 Final Beta 或者 Ubuntu 14.10 RC 版本呢? 本文将告诉

ChaletOS 16.04 发布,肖似Windows 10

有一款名为 ChaletOS 的发行版不久前发布了 16.04 LTS ,它是一款基于 Ubuntu 16.04 LTS 的发行版.这个发行版的主要目标是为那些前 Windows 用户们提供一个进入开源世界的便捷之路.它提供了一个名为起点(Start Point)的应用,设计用来帮助那些 Windows 用户们快速熟悉该系统,这个应用里面包括视频指引.教程和推荐应用等. 不过,对于有些 Windows 用户,可能希望看到熟悉的 Windows 界面,因此,ChaletOS 的开发者 Dejan

ubuntu 16.04 + python + matplotlib下画图显示中文设置

一.需求 因为在python画图显示的时候,经常需要展示一些中文,但是ubuntu系统下按照默认安装方式安装的时候,一般是不能显示中文的,当强行给legend.xlabel.ylabel赋予中文的时候,会显示为方块 二.参考 http://blog.csdn.net/onepiece_dn/article/details/46239581 三.配置方法 (1)  显示本机的同时可用的中文和西文字体 def dispFonts(): #显示可用的中文字体,同时支持英文的 from matplotl

ubuntu14.04中 gedit 注释能显示中文,而source insight中显示为乱码的解决办法

1.乱码显示情况: 2.用gedit打开文件,并用ctrl+shift+s(另存为),其中charactor coding选为chinese simplified(GB2312); 2.修改个文件名, 并点击save. 3.用source insight打开,看看是不是不是乱码了? - - 4.这个我可搞了好几天,嘿嘿~~~