const char chars[] = "abcdef ....";
char result[...];
memcpy(result, chars, sizeof(chars));
for (unsigned i = 0; i < (sizeof(chars)-1); ++i) {
unsigned j = rand() % sizeof(chars);
char tmp = result[j];
result[j] = result[i];
result[i] = tmp;
}
將結果寫入文本文件時出現問題。如何在不重複的情況下洗牌字符「abcdefghijklmnopqrstuvwxyz」
是的,沒有+ 1就沒問題了,這在這裏完全沒有必要。 – 2012-07-15 09:21:58
我試過你的方法,它不給我有趣的性格,但它給我號碼65-90如何將它們顯示爲字母表? – newbieprogrammer 2012-07-15 11:28:54
@ user1526669:沒有-1它會工作。目前,它將所有內容都轉換爲整數(將字符提升爲整數)。所以要麼刪除+ -1,要麼做cout <<(char)(letter [i] +'A'-1)<< ... – 2012-07-15 11:31:32