巴拉巴拉巴拉呼呼呼呼 2021-08-10 20:57 采纳率: 58.3%
浏览 121
已结题

请问这个代码为什么在pta上一直答案错误呀,我自己运行的时候没有问题呀

输入格式:
输入在第一行给出正整数N(≤10);随后N行,每行按照格式姓名 生日 性别 固话 手机给出一条记录。其中姓名是不超过10个字符、不包含空格的非空字符串;生日按y/m/d的格式给出年月日;性别用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<iostream>
#include<string>
#include<cmath>
using namespace std;
struct phonebook
{
    string name, birthday, sex, stickphone, phone;
};
int main()
{
    string Name, Birthday, Sex, cantmovedphone, movebyPhone;
    phonebook num1[10];
    int a;
    cin >> a;
    for (int i = 0; i < a; i++)
    {
        cin >> Name >> Birthday >> Sex >> cantmovedphone >> movebyPhone;
        num1[i].name = Name;
        num1[i].birthday = Birthday;
        num1[i].sex = Sex;
        num1[i].stickphone = cantmovedphone;
        num1[i].phone = movebyPhone;
    }
    int number;
    int put[1000];
    int n;
    cin >> number;
    for (int i = 0; i < number; i++)
    {
        cin >> n;
        put[i] = n;
    }
    for (int i = 0; i < number-1; i++)
    {
        if (put[i] < a)
            cout << num1[put[i]].name << " " << num1[put[i]].stickphone << " " << num1[put[i]].phone << " " << num1[put[i]].sex << " " << num1[put[i]].birthday << endl;
        else
            cout << "Not Found" << endl;
    }
    number = number - 1;
    if (put[number] < a)
        cout << num1[put[number]].name << " " << num1[put[number]].stickphone << " " << num1[put[number]].phone << " " << num1[put[number]].sex << " " << num1[put[number]].birthday;
    else
        cout << "Not Found";
}
  • 写回答

1条回答 默认 最新

  • bekote 2021-08-10 21:14
    关注

    put[i]<a改为 put[i]≥0 && put[i]<a
    put[number]<a改为 put[number]≥0 && put[number]<a

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 8月22日
  • 已采纳回答 8月14日
  • 创建了问题 8月10日

悬赏问题

  • ¥20 keepalive配置业务服务双机单活的方法。业务服务一定是要双机单活的方式
  • ¥50 关于多次提交POST数据后,无法获取到POST数据参数的问题
  • ¥15 win10,这种情况怎么办
  • ¥15 如何在配置使用Prettier的VSCode中通过Better Align插件来对齐等式?(相关搜索:格式化)
  • ¥100 在连接内网VPN时,如何同时保持互联网连接
  • ¥15 MATLAB中使用parfor,矩阵Removal的有效索引在parfor循环中受限制
  • ¥20 Win 10 LTSC 1809版本如何无损提升到20H1版本
  • ¥50 win10 LTSC 虚拟键盘不弹出
  • ¥30 微信小程序请求失败,网页能正常带锁访问
  • ¥15 Matlab求解微分方程,如何用fish2d进行预优?