解题思路:
注意事项:
动态分配(或者直接定义一个足够大的全局数组)
交换两数下标相同时不交换,节约时间
参考代码:
#include <iostream>
using namespace std;
int main ()
{
int n,m;
cin>>n>>m;
double *p=new double [n+1];
for(int i=1;i<=n;i++)
cin>>*(p+i);
for(int i=0;i<m;i++)
{
int a,b;
cin>>a>>b;
if(a!=b){
double temp;
temp=*(p+a);
*(p+a)=*(p+b);
*(p+b)=temp;
}
}
for(int i=1;i<=n;i++)
cout<<*(p+i)<<endl;
return 0;
}
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题6.3 (C++代码)浏览:789 |
C语言程序设计教程(第三版)课后习题6.6 (C语言代码)浏览:339 |
C语言程序设计教程(第三版)课后习题8.5 (C语言代码)浏览:542 |
Minesweeper (C语言描述,蓝桥杯)浏览:1074 |
1012题解浏览:791 |
1231题解(注意理解“输入多个测试实例”)浏览:764 |
简单的a+b (C语言代码)浏览:635 |
求圆的面积 (C++代码)浮点数有误差!!!浏览:646 |
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:461 |
简单的a+b (C语言代码)浏览:592 |