全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1039
推到 Plurk!
推到 Facebook!

關於不重複的數字?

尚未結案
bzbz
一般會員


發表:7
回覆:10
積分:3
註冊:2003-04-19

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-04-12 23:39:41 IP:203.203.xxx.xxx 未訂閱
請問一下: 假如我的a[10]起始值為0,我想要從a[0]到a[9]裡的數值都是不一樣的? 該要怎麼用啊?ps: rand() 謝謝喔.. ! 發表人 - bzbz 於 2004/04/12 23:42:43
RaynorPao
版主


發表:139
回覆:3622
積分:7025
註冊:2002-08-12

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-04-13 00:00:46 IP:61.221.xxx.xxx 未訂閱
引言: 請問一下: 假如我的a[10]起始值為0,我想要從a[0]到a[9]裡的數值都是不一樣的? 該要怎麼用啊?ps: rand() 謝謝喔.. !
bzbz 你好:
(1)可以用類似「集合」的想法,假設某一個集合中原本有 0~9 十個元素,並且
   按照順序由小至大排列,每次以亂數取出其中一個,直到取完為止
(2)請參考以下的範例程式碼
   >>>>>>> >
    < src="http://delphi.ktop.com.tw/loadfile.php?TOPICID=10003806&CC=223734"> -- Enjoy Researching & Developing --
        
------
-- 若您已經得到滿意的答覆,請適時結案!! --
-- 欲知前世因,今生受者是;欲知來世果,今生做者是 --
-- 一切有為法,如夢幻泡影,如露亦如電,應作如是觀 --
bzbz
一般會員


發表:7
回覆:10
積分:3
註冊:2003-04-19

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-04-13 00:05:55 IP:203.203.xxx.xxx 未訂閱
#include 
#include 
#include 
#define n 10
void main()
{
        srand((unsigned)time(NULL));
        int a[n]={0};
        for(int i=0;i    這樣寫,會好嗎?前輩們!謝謝指教!!    !    發表人 - bzbz 於 2004/04/13  00:26:29
        
anpino
版主


發表:31
回覆:477
積分:231
註冊:2003-01-02

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-04-13 09:27:24 IP:61.66.xxx.xxx 未訂閱
引言:
#include 
#include 
#include 
#define n 10
void main()
{
        srand((unsigned)time(NULL));
        int a[n]={0};
        for(int i=0;ibreak;
                        }
                }
                  if(a[i]!=a[j]) 
                  {
                            printf("%d\n",a[i]);
                  }
        }
}
這樣寫,會好嗎?前輩們!謝謝指教!! 這樣寫並不好,一個好程式不會出現goto。 (希望包子大別介意) < face="Verdana, Arial, Helvetica"> ------------------------------- 數學系是內功很強(邏輯/分析) 資工系是招式很多(程式技巧) 就像令狐沖VS東方不敗:D Programmers Guide http://anpino.begin.8d8d.com 發表人 - anpino 於 2004/04/13 09:32:12
bzbz
一般會員


發表:7
回覆:10
積分:3
註冊:2003-04-19

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-04-13 21:01:38 IP:203.203.xxx.xxx 未訂閱
引言:
引言:
#include 
#include 
#include 
#define n 10
void main()
{
        srand((unsigned)time(NULL));
        int a[n]={0};
        for(int i=0;ibreak;
                        }
                }
                  if(a[i]!=a[j]) 
                  {
                            printf("%d\n",a[i]);
                  }
        }
}
這樣寫,會好嗎?前輩們!謝謝指教!! 這樣寫並不好,一個好程式不會出現goto。 (希望包子大別介意) < face="Verdana, Arial, Helvetica"> ------------------------------- 數學系是內功很強(邏輯/分析) 資工系是招式很多(程式技巧) 就像令狐沖VS東方不敗:D Programmers Guide http://anpino.begin.8d8d.com 發表人 - anpino 於 2004/04/13 09:32:12
我也覺的用goto不好也,所以才問的,呵呵,書上也是說少用為妙,但為啥大家都說用goto不好啊?謝謝喔... !
bzbz
一般會員


發表:7
回覆:10
積分:3
註冊:2003-04-19

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-04-13 21:22:08 IP:203.203.xxx.xxx 未訂閱
#include 
#include 
#include 
#define n 10
void main()
{
        srand((unsigned)time(NULL));
        int a[n]={0};
        for(int i=0;ibreak;
                        }
                }
                  if(a[i]!=a[j]) 
                  {
                            printf("%d\n",a[i]);
                  }
        }
}
再問一下,你的程式我執行了,怎麼沒有東西出現啊? 只出現"press any key"",怎會這樣子啊? 不好意思,又麻煩你了!! !
anpino
版主


發表:31
回覆:477
積分:231
註冊:2003-01-02

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-04-14 09:13:33 IP:61.66.xxx.xxx 未訂閱
引言: 我也覺的用goto不好也,所以才問的,呵呵,書上也是說少用為妙,但為啥大家都說用goto不好啊?謝謝喔...
[引用林锐 博士的高质量C /C编程指南 -- 第4章 表达式和基本语句] 自從提倡結構化設計以來,goto就成了有爭議的語句。首先,由于goto語句可以靈活跳轉,如果不加限制,它的確會破壞結構化設計風格。其次,goto語句經常帶來錯誤或隱患。它可能跳過了某些對象的構造、變量的初始化、重要的計算等語句,例如: goto state; String s1, s2; // 被goto跳過 int sum = 0; // 被goto跳過 … state: … 如果編譯器不能發覺此類錯誤,每用一次goto語句都可能留下隱患。 很多人建議廢除C /C的goto語句,以絕後患。但實事求是地說,錯誤是程序員自己造成的,不是goto的過錯。goto 語句至少有一處可顯神通,它能從多重循環體中咻地一下子跳到外面,用不著寫很多次的break語句; 例如
    { …        { …              { …                   goto error;             }        }    }    error:    …
就像樓房著火了,來不及從樓梯一級一級往下走,可從窗口跳出火坑。所以我們主張少用、慎用goto語句,而不是禁用。 -------------------- [Anpino補充] 程式新手最好禁用。先養成良好的程式設計風格最重要。 ------------------------------- 數學系是內功很強(邏輯/分析) 資工系是招式很多(程式技巧) 就像令狐沖
bzbz
一般會員


發表:7
回覆:10
積分:3
註冊:2003-04-19

發送簡訊給我
#8 引用回覆 回覆 發表時間:2004-04-14 09:23:26 IP:203.203.xxx.xxx 未訂閱
anpino大大你好: (1)我了解了,謝謝喔 (2)我再請問一下,你的程式我執行了,怎麼沒有東西出現啊? 只出現"press any key"",怎會這樣子啊? 謝謝!! ! 發表人 - bzbz 於 2004/04/14 09:28:26
anpino
版主


發表:31
回覆:477
積分:231
註冊:2003-01-02

發送簡訊給我
#9 引用回覆 回覆 發表時間:2004-04-14 09:23:57 IP:61.66.xxx.xxx 未訂閱
喔! Sorry! 是我的失誤。 更正紅色字體部分。
引言:
#include 
#include 
#include 
#define n 10
void main()
{
        srand((unsigned)time(NULL));
        int a[n]={0};
        for(int i=0;ii --;
                                  break;
                        }
                  }
        }
        for(int i=0;i
簡單的debug可以自己trace喔! ------------------------------- 數學系是內功很強(邏輯/分析) 資工系是招式很多(程式技巧) 就像令狐沖
bzbz
一般會員


發表:7
回覆:10
積分:3
註冊:2003-04-19

發送簡訊給我
#10 引用回覆 回覆 發表時間:2004-04-14 09:33:07 IP:203.203.xxx.xxx 未訂閱
引言: 喔! Sorry! 是我的失誤。 更正紅色字體部分。
引言:
#include 
#include 
#include 
#define n 10
void main()
{
        srand((unsigned)time(NULL));
        int a[n]={0};
        for(int i=0;ii --;
                                  break;
                        }
                  }
        }
        for(int i=0;i
簡單的debug可以自己trace喔! ------------------------------- 數學系是內功很強(邏輯/分析) 資工系是招式很多(程式技巧) 就像令狐沖>< face="Verdana, Arial, Helvetica"> 漂亮....你講的對,簡單的debug可以自己trace喔! 謝謝喔 !
系統時間:2024-05-11 19:56:02
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!