解题思路:
依据题目描述进行模拟即可
min记录区间最小数,m记录最小数的数组下标
通过printf更方便保证输出格式
注意事项:
不要忘记回溯(min=999999999)!
参考代码:
#include<iostream> #include<cstdio> using namespace std ; int a[1000] ; void swap(int &a,int &b) ; int main() { int n,min=999999999,m=0 ; cin>>n ; for(int i=0;i<n;i++) { cin>>a[i] ; } for(int i=0;i<n;i++) { for(int j=i;j<n;j++) { if(a[j]<min) { min=a[j] ; m=j ; } } swap(a[i],a[m]) ; printf("swap(a[%d], a[%d]):",i,m) ; for(int r=0;r<n;r++) { cout<<a[r]<<" " ; } cout<<endl ; min=999999999 ; } return 0 ; } void swap(int &a,int &b) { int t=a ; a=b ; b=t ; return ; }
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题8.7 (C语言代码)浏览:506 |
【出圈】 (C语言代码)用单项循环链表浏览:841 |
C语言程序设计教程(第三版)课后习题7.2 (C语言代码)浏览:705 |
C二级辅导-求偶数和 (C语言代码)浏览:664 |
钟神赛车 (C++代码)浏览:905 |
Hello, world! (C语言代码)浏览:1315 |
C语言程序设计教程(第三版)课后习题10.5 (C语言代码)浏览:566 |
不会做的浏览:954 |
C语言程序设计教程(第三版)课后习题6.10 (C语言代码)浏览:1090 |
C语言训练-求s=a+aa+aaa+aaaa+aa...a的值 (C语言代码)浏览:636 |