c++中打亂數組的順序輸出,這裡記錄一下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<code>#include <stdio.h></code>
<code>#include <stdlib.h></code>
<code>#include <time.h></code>
<code> </code>
<code>// 随機打亂一個數組</code>
<code>void</code> <code>random(</code><code>int</code> <code>a[], </code><code>int</code> <code>n)</code>
<code>{</code>
<code> </code><code>int</code> <code>index, tmp, i;</code>
<code> </code><code>srand</code><code>(</code><code>time</code><code>(NULL));</code>
<code> </code><code>for</code> <code>(i = 0; i <n; i++)</code>
<code> </code><code>{</code>
<code> </code><code>index = </code><code>rand</code><code>() % (n - i) + i;</code>
<code> </code><code>if</code> <code>(index != i)</code>
<code> </code><code>{</code>
<code> </code><code>tmp = a[i];</code>
<code> </code><code>a[i] = a[index];</code>
<code> </code><code>a[index] = tmp;</code>
<code> </code><code>}</code>
<code> </code><code>}</code>
<code> </code><code>}</code>
<code>int</code> <code>main()</code>
<code> </code><code>int</code> <code>a[] = {1, 2, 3, 4, 5};</code>
<code> </code><code>int</code> <code>i;</code>
<code> </code><code>random(a, 5);</code>
<code> </code><code>for</code> <code>(i = 0; i < 5; i++)</code>
<code> </code><code>printf</code><code>(</code><code>"%d "</code><code>, a[i]);</code>
<code> </code><code>printf</code><code>(</code><code>"\n"</code><code>);</code>
<code> </code><code>system</code><code>(</code><code>"pause"</code><code>);</code>
<code> </code><code>return</code> <code>0;</code>
<code>}</code>
本文轉自xuzw13 51CTO部落格,原文連結:http://blog.51cto.com/xuzhiwei/1354579,如需轉載請自行聯系原作者