努力不咕咕 2022-08-22 11:38 采纳率: 88.2%
浏览 22
已结题

依据两个条件筛选数据

问题遇到的现象和发生背景

将两个文件的数据保存到结构体中后,依据时间和编码将数据进行匹配,

问题相关代码,请勿粘贴截图
    int j_n = 0;//该历元的n文件的卫星数
epochnum_1 = 0;
for (int i_prno = 0; i_prno < epoch[epochnum_1].epochgps; i_prno++)
    for (int i_tn = 0; i_tn < line1; i_tn++)
    {
        if ((ephlst[i_tn].PRN = epoch[epochnum_1].oPRN[i_prno]) && (abs(ephlst[i_tn].t_ - epoch[epochnum_1].t_) < 3600))
        {
            j_n++;
            cout << i_prno << "   时间:" << epoch[epochnum_1].hour << "   编号:" << epoch[epochnum_1].oPRN[i_prno] <<"  判断编号是否变化:"<< epoch[epochnum_1].obs[i_prno]<<"    ";
            cout << i_tn << "   时间:" << ephlst[i_tn].hour << "   编号:" << ephlst[i_tn].PRN << "   判断编号是否变化:" << ephlst[i_tn].iode << endl;
        }
    }
运行结果及报错内容

运行结果

img

报错内容:
按理来说,两个红色区域应该唯一且对应,但运行结果epoch对应ephlst中所有时间满足条件的区域,未考虑编码相同的要求。

我想要达到的结果

依据时间和编码条件,筛选出一一对应的数据并用于后续数据处理。
正确输出结果应该为:
0 时间:0 编号:18 判断编号是否变化:2.48558e+07 210 时间:0 编号:18 判断编号是否变化:192

  • 写回答

1条回答 默认 最新

  • 赵4老师 2022-08-22 14:15
    关注

    std::cout.precision(15);

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

报告相同问题?

问题事件

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

悬赏问题

  • ¥15 keil的map文件中Image component sizes各项意思
  • ¥30 BC260Y用MQTT向阿里云发布主题消息一直错误
  • ¥20 求个正点原子stm32f407开发版的贪吃蛇游戏
  • ¥15 划分vlan后,链路不通了?
  • ¥20 求各位懂行的人,注册表能不能看到usb使用得具体信息,干了什么,传输了什么数据
  • ¥15 Vue3 大型图片数据拖动排序
  • ¥15 Centos / PETGEM
  • ¥15 划分vlan后不通了
  • ¥20 用雷电模拟器安装百达屋apk一直闪退
  • ¥15 算能科技20240506咨询(拒绝大模型回答)