請問如何將數組中元素順序打亂

我想做一個連連看.
比方說有一個數組含100個元素.
每過一關,我要將這100個元素的值打亂.請問要怎麼實現.

我想的方法是生成0-99之間的100隨機數作爲數組的索引.然後
int i, j;
int rand[100]; 存放0--99之間的隨機數
int temp;
int arr[100]; //用於保存圖片.我需要將這個數組打亂
打亂其實很簡單,但是算法上要保證能夠能夠恢復回來,
另外圖片你有的時候回發現,即使加密了,樣子還是可以模糊的改變出來,
所以算法上覆雜一點,樓主自己多實幾個算法的組合吧。
我也遇到過這個問題,其實微軟的 visual studio裏面就提供了一些很好的界面庫,好像是MFC和什麼來着,具體我也沒研究過。
我現在常在雙系統下,並且偏向Ubuntu,所以就選了一個兼容雙系統的 圖形庫 Qt4和編譯IDE Qt creator,用起來感覺挺簡單的,跟C#拖拖拽拽的風格差不多。網上資料不上,有論壇,你也可以在qq羣搜索裏面找qt的討論羣學習。
這裏有我的一些 資料,主要是安裝方面的
LZ,一開始我和你也有一樣的想法,一樣的迷茫~~我之前也是搞VB的,都快5年了!這幾周開始學習C++,也覺得很彆扭,不過慢慢就習慣了!初期的話可以嘗試着用windows api來寫界面,等C++語言熟練了之後,就可以玩MFC了~MFC沒有紮實的C/C++語言基礎,會感覺很糾結的。不過你可以一邊學習C++語言,一邊玩MFC。如果你完全沒有接觸過C++的話,就先別弄MFC,那樣會嚴重打擊你的積極性!

c/c++做界面也相當強悍
現在OBJECT C大行其道
看看GOBJECT,然後基於GOBJECT GLIB的gtk 
clutter非常非常多的GUI工具
你就知道c的強大 不在於能輕鬆handle 操作系統還能handleGUI

我認爲重要的還是你程序設計的思想
工具和語言也重要但是不如你腦子中的design重要
你可以選擇VC++ windows平臺 你也可以選擇 qt, gtk linux平臺
無所謂均爲工具而已 掌握其提供的組件也是有必要的
它能給你設計拓寬思路 不用把看到那些很炫的界面想象的很複雜
其實按照層次分解開並不複雜
比如一個複雜的動畫看起來很美 如何實現呢?
分解下來 OS->Linux  
tool: opengl, clutter ...等GUI系統
語言 c
任務分解就是opengl操作gpu來實現一段動畫過程
將此段動畫植入帶有window處理功能的clutter組件對象中
實現對於窗口 點擊 拖動的處理
其實平臺最重要也最不重要很多工具均爲平臺無關的
關乎的呢掌握這些標準工具之後如果來實現出這個效果而已
囉囉嗦嗦說一堆也不知道有沒有讓你聽懂
聽不懂就當沒說吧 : )

用C或C++寫界面是不是大材小用了!!!!!如果爲了寫界面,還是用MFC吧,,,純粹的用SDK,,Windows編程,,你很快就會不喜歡寫界面的!!!當然,,還有很多拓展的類一些別人寫的類,用VC寫出來的也還不錯!!

win api是底層的東西,做界面都要用的,裏面是很多函數,包括做界面的東西,vc++6.0中,建一個win32 Application 是一樣可以做出界面的,但是具體工作都要程序一個字一個字的寫出來。
  直接用win api來做,太繁瑣,太麻煩,而且要重複寫很多代碼,所以微軟的技術人員就搞出一套框架,把你平時做界面要做的一些工作都封裝起來,抽象起來,從而省去程序員很多工作,你只需按mfc的要求去填寫一些代碼即可,什麼消息機制的東西啊都比原來直接用win api寫要簡單的多了,mfc裏叫消息映射。但是建win32 Application工程還是繁瑣,於是便有了MFC AppWizard(exe)工程,它會給你建mfc程序的嚮導,你按着步驟做就可以了,它又給你省去了很多重複的和技術含量相當低的一些工作.
  mfc裏有很多需要記憶的東西,宏啊函數啊等等,你做的多了熟悉了就好了.你可以從最簡單的界面開始,一步一步來。

來源:足球直播

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章