看板 puzzle 關於我們 聯絡資訊
#include <stdio.h> int num[20]; // 要印出的組合 int used[20]; // 某個數字是否使用過 int n; // 要印多少個數字 void lalala(int a){ int i; if (a == n){ /* 這邊印出 num[] 這個陣列的結果 */ } else { for (i = 0 ; i < n ; i ++){ if (used[i] == 0){ num[a] = i; used[i] = 1; lalala(a + 1); used[i] = 0; } } } } int main(){ /* 這邊輸入 n ,讓n 等於你想要印 1 ~ n 的組合 */ lalala(0); } ※ 引述《Manbot (manbot)》之銘言: : 若有N個不同的東西 : 就會有N!不同的排列方法 : 那我們該怎麼用程式列出N!種的可能呢 : 就拿1-9九個數字當例子 : 9!種...要怎麼有效改變排列才能完成呢 : --------------- : 想了好久都想不出來 -- 人口壓力,請交給保險套解決   不要交給戰爭、墮胎或疾病 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.95.27