交换输出

简介:

交换输出

时间限制: 3000 ms  |  内存限制: 65535 KB
难度: 1
描述
输入n(n<100)个数,找出其中最小的数,将它与最前面的数交换后输出这些数。(如果这个第一个数就是最小的数,则保持原样输出,如果最小的数有相同的按照前面的交换)
输入
输入数据有多组,每组占一行,每行的开始是一个整数n,表示这个测试实例的数值的个数,跟着就是n个整数。n=0表示输入的结束,不做处理。
输出
对于每组输入数据,输出交换后的数列,每组输出占一行。
样例输入
4 2 1 3 4
5 5 4 3 2 1
0
样例输出
1 2 3 4
1 4 3 2 5

查看代码---运行号:252275----结果:Accepted

运行时间: 2012-10-05 15:02:33  |  运行人: huangyibiao
01. #include <cstdio>
02. #include <iostream>
03. using namespace std;
04. int main()
05. {
06. int n;
07.  
08. while (cin >> n && n != 0)
09. {
10. int v[100];
11. int min, index = 0, k;
12.  
13. cin >> min;
14. v[0] = min;
15. for (int i = 1; i < n; i++)
16. {
17. cin >> k;
18. if (min > k)
19. {
20. index = i;
21. min = k;
22. }
23. v[i] = k;
24. }
25. //交换
26. int t = v[0];
27. v[0] = v[index];
28. v[index] = t;
29.  
30. for (int i = 0; i < n; i++)
31. {
32. if (i != 0)
33. cout << " ";
34. cout << v[i];
35. }
36. cout << endl;
37. }
38. return 0;
39. }

目录
相关文章
|
7月前
|
算法 前端开发
670. 最大交换
670. 最大交换
34 0
|
2月前
输入3个数a,b,c,按大小顺序输出
输入3个数a,b,c,按大小顺序输出。
96 9
|
5月前
|
存储 缓存 大数据
三种交换方式的比较
互联网核心部分主要由路由器构成,负责分组交换。路由器是网络中转发数据的关键,它接收和转发分组,确保边缘部分的主机间通信。通信方式包括: 1. 电路交换- 用于早期电话系统,先建立连接,然后通话,最后释放,适合连续大数据传输,但线路利用率低。 2. **分组交换** - 常见于现代互联网,数据被分割成分组,每个独立转发,提高了线路效率和灵活性。 3. 报文交换-整个报文一次性转发,存储转发,适合小规模、非实时通信,但时延较长。 分组交换结合了高效和灵活性,是互联网核心的优选技术。
171 5
交换两个数的值的方法(三种)
交换两个数的值的方法(三种)
71 1
不使用第三变量。如何对2个数进行交换
不使用第三变量。如何对2个数进行交换
83 0
交换字符串的顺序
当我们想要交换一个字符串的顺序,我们应该怎么做呢,例如“abcdefg”我们要转化为“gfedcba”,那我们来看看下面的代码
|
存储 算法
交换算法(交换两个数字)
交换算法(交换两个数字)
90 0
【C两数交换】实现ab交换居然有三种方法?
【C两数交换】实现ab交换居然有三种方法?
154 0
【C两数交换】实现ab交换居然有三种方法?
输入一个整形数组,实现一个函数,来调整该数组中数字的顺序//使得数组中所有奇数位于数组的前半部分,所有偶数位于数组的后半部分
输入一个整形数组,实现一个函数,来调整该数组中数字的顺序//使得数组中所有奇数位于数组的前半部分,所有偶数位于数组的后半部分
136 0