原题链接:蓝桥杯算法提高VIP-交换Easy
解题思路:无
注意事项:无
参考代码:
#include<stdio.h>
#define N 1000
int main()
{
int n,m;
int i,a[N];
int x,y,t;
scanf("%d%d",&n,&m);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
while(m--)
{
scanf("%d%d",&x,&y);
t=a[x-1];
a[x-1]=a[y-1];
a[y-1]=t;
}
for(i=0;i<n;i++)
printf("%d\n",a[i]);
return 0;
}
0.0分
5 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
@周周 程序输出的是printf("%d ",&a[i]); 这个应该是一个地址,代码没有错误,但是题目上的要求是1< =N< =1000 你这里数组a[10]可能容量不够测试数据请问这个为什么一直编译错误,谢谢 #include<stdio.h> int main(){ int i,j,n,m,t; int a[10]; int x,y; scanf("%d%d",&n,&m); for(i=0;i<n;i++) scanf("%d",&a[i]); while(m--){ scanf("%d%d",&x,&y); t=a[x-1]; a[x-1]=a[y-1]; a[y-1]=t; } for(i=0;i<n;i++){ printf("%d\n",&a[i]); } return 0; }