m0_61604116 2021-10-25 21:37 采纳率: 100%
浏览 68
已结题

c++基础语法综合题

img

  • 写回答

1条回答 默认 最新

  • 关注

    代码如下,如有帮助,请帮忙采纳一下,谢谢。

    代码:

    #include <iostream>
    #include <fstream>
    using namespace std;
    struct Node 
    {
        int id;
        double x;
        double y;
    };
    int main()
    {
        Node a[30];
        double dis[30];
        int index[30];
        int nmb = 0,i,j;
        char ch;
        ifstream is("a.txt");
        ofstream os("b.txt");
        if (!is.is_open())
        {
            cout << "文件打开失败"<<endl;
            return 0;
        }
        while(!is.eof())
        {
            is >> a[nmb].id >> ch >> a[nmb].x >> ch >> a[nmb].y;
            if(a[nmb].id > 0 && a[nmb].x > 0 && a[nmb].y>0)
                nmb++;
        }
        is.close();
        dis[0] = 0;
        index[0] = 0;
        for ( i =1;i<nmb;i++)
        {
            dis[i] = (a[i].x - a[0].x) *(a[i].x - a[0].x) + (a[i].y - a[0].y)*(a[i].y - a[0].y);
            index[i] = i;
        }
    
        //排序
        for (i=0;i<nmb-1;i++)
        {
            for (j=0;j<nmb-i-1;j++)
            {
                if(dis[j]>dis[j+1])
                {
                    double t = dis[j];
                    dis[j] = dis[j+1];
                    dis[j+1] = t;
                    int xx = index[j];
                    index[j]=index[j+1];
                    index[j+1] = xx;
                }
            }
        }
        
        for (i=1;i<=9;i++) //0是自身,所以从1开始
        {
            int xx = index[i];
            os << a[xx].id << " " << a[xx].x << " " << a[xx].y << endl;
        }
        os.close();
        return 0;
    
    }
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 10月29日
  • 已采纳回答 10月27日
  • 创建了问题 10月25日

悬赏问题

  • ¥20 关于#anlogic#sdram#的问题,如何解决?(关键词-performance)
  • ¥15 相敏解调 matlab
  • ¥15 求lingo代码和思路
  • ¥15 公交车和无人机协同运输
  • ¥15 stm32代码移植没反应
  • ¥15 matlab基于pde算法图像修复,为什么只能对示例图像有效
  • ¥100 连续两帧图像高速减法
  • ¥15 如何绘制动力学系统的相图
  • ¥15 对接wps接口实现获取元数据
  • ¥20 给自己本科IT专业毕业的妹m找个实习工作