当前位置: 首页 > news >正文

PTA基础编程题目集 7-34 通讯录的录入与显示(C语言实现)

摘要:本文详细记录了“通讯录查询”程序的题目描述与 C 语言实现。程序通过结构体存储联系人信息,支持按编号查询并输出指定记录,输入输出格式规范,代码包含完整注释,适合 C 语言初学者参考。

题目描述

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

输入格式:

输入在第一行给出正整数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

代码部分实现

#include<stdio.h>// 引入标准输入输出头文件#include<string.h>// 引入字符串处理头文件typedefstruct{// 定义通讯录结构体类型charname[11];// 姓名字符串,最多10个字符charbirthday[11];// 生日字符串,格式yyyy/mm/ddchargender;// 性别字符,M或FcharfixedPhone[16];// 固定电话字符串,最多15位charmobilePhone[16];// 移动电话字符串,最多15位}Contact;// 结构体类型名为Contactintmain(){intn;// 定义通讯录记录条数scanf("%d",&n);// 读取记录条数Contact contacts[10];// 定义Contact结构体数组,最多存储10条记录for(inti=0;i<n;i++){// 循环读取n条记录scanf("%s %s %c %s %s",// 按格式读取:姓名 生日 性别 固话 手机contacts[i].name,// 第i条记录的姓名contacts[i].birthday,// 第i条记录的生日&contacts[i].gender,// 第i条记录的性别contacts[i].fixedPhone,// 第i条记录的固定电话contacts[i].mobilePhone);// 第i条记录的移动电话}intk;// 定义要查询的记录编号个数scanf("%d",&k);// 读取查询次数for(inti=0;i<k;i++){// 循环处理k次查询intidx;// 定义要查询的记录索引scanf("%d",&idx);// 读取查询索引if(idx>=0&&idx<n){// 判断索引是否有效printf("%s %s %s %c %s\n",// 按指定格式输出记录contacts[idx].name,// 姓名contacts[idx].fixedPhone,// 固定电话contacts[idx].mobilePhone,// 移动电话contacts[idx].gender,// 性别contacts[idx].birthday);// 生日}else{printf("Not Found\n");// 索引无效则输出 Not Found}}return0;// 程序正常结束}

下面是程序的整体执行流程:

开始

读取记录条数 N

循环读取 N 条记录

i < N ?

读取一条记录:姓名 生日 性别 固话 手机

存入 contacts[i]

i++

读取查询次数 K

循环 K 次

j < K ?

读取查询索引 idx

idx 有效?

输出记录:姓名 固话 手机 性别 生日

输出 Not Found

j++

结束

http://www.jsqmd.com/news/1310890/

相关文章:

  • Office安装包激活
  • 2026 年现阶段,望都可靠的仓库隔离网直销厂家哪家强,车间乱堆货物总出事?这玩意儿原来是高效分区的隐形利器,你用对了吗?-江欧丝网 - 行业推荐官【官方】
  • 【单片机毕业设计推荐】基于 STM32 或 51 单片机的智能水族箱环境监控与自动控制系统设计,基于 STM32 或 51 单片机的鱼缸智能饲喂与水质调控装置设计(025204)
  • AI生成内容检测实战:从原理到本地化审核流水线构建
  • 香港城市大学(东莞)智能感知与先进制造团队招聘深度解析
  • 2026优选青岛世创机械:PE管材设备实力厂家深度解析 - 装修教育财税推荐2026
  • PCB布线实战指南:从信号完整性到生产文件的完整设计流程
  • TensorFlow GPU环境搭建全攻略:从CUDA配置到性能验证
  • 微程序控制器实验:从CPU黑盒到白盒的实践指南
  • 2026 年济南靠谱的客运包车服务公司哪个好,别人不敢说的出行省钱技巧,用它能省出半趟路费! - 行业鉴选官
  • UPSERT并发竞争下的「幽灵ID」脏数据
  • AI智能体系统化调试:从可观测性到诊断修复的工程实践
  • 从 SSH 端口转发到 kcptun UDP 加速:被墙后的网络优化全流程实战
  • 2026 年新消息:邵东比较好的厂区物料周转车实力厂家选哪家,车间里总乱堆?这台帮你把物料跑得飞起的玩意儿究竟是什么? - 行业甄选官
  • Windows无线网卡MAC地址修改:原理、方法与实战指南
  • UniApp Android全面屏适配:实现底部导航栏沉浸式透明效果
  • 考研调剂全攻略:新疆财经大学管理科学与工程调剂解析与实战指南
  • ZigBee协议解析:从低功耗网状网络到智能家居稳定组网实战
  • SCSE注意力机制:双路径特征校准在CNN中的原理与PyTorch实现
  • DP1.2硬件规范深度解析与联想设备兼容性实战指南
  • 2026 年现阶段,大祥专业的场地围栏网厂商格局重塑与选型新思路,这些地方还在裸奔?难怪事故频发得吓人!-博才金属网业 - 企业信息推荐【官方】
  • 写了个脚本,把BBR安装切换与配置放在一起管理
  • 2026 年现阶段哈巴河有实力的空气能采暖安装源头厂家深度解析,花几千块装这玩意儿,竟比烧煤还省一半钱? - 行业推荐【认证官】
  • 2026泰安活动拍摄公司排行榜TOP5 | 会议拍摄 | 活动跟拍 | 视频直播 | 照片直播 | 年会拍摄服务商评测对比 - 政企影像扫地僧
  • 2026 年当下,庆阳热门的新能源电车托运企业哪个好,把车跨城运回老家,选对方式能省出大半个保养费,这事儿你得懂点门道?-盛世华航轿车托运 - 领域鉴赏官
  • 大功率液冷PCS散热路径设计与温升仿真实操要点
  • Spring Cloud Alibaba Sentinel实战:从零构建微服务流量防线与Nacos规则持久化
  • 3分钟批量获取网易云和QQ音乐歌词:163MusicLyrics终极指南
  • 150平新中式庭院怎么配比不显挤?2026年这5条尺度法则要记牢
  • 2026年WordPress商城主题推荐