求用cc語言編寫輸入n輸出1 n的所有排列(千萬不

時間 2021-09-19 09:42:59

1樓:匿名使用者

#include

#include

using namespace std;

int main()

int n;

cout << "input n" << endl;

// 輸入n

cin >> n;

// 這裡可以自己做輸入錯誤檢測

// 給陣列動態分配大小

int* a = new int[n];

// 給陣列賦值(要排列的資料來源)

for(int i = 1; i <= n; i++)a[i - 1] = i;

do{// 依次輸出每個數

for(int i = 0; i < n; i++)cout << a[i] << " ";

// 換行

cout << endl;

// 做排列計算(c++ stl函式)

while (next_permutation(a,a+n));

// 記得釋放

delete a;

return 0;

執行結果如下:

2樓:

// 主要是遞迴的應用

#include

using namespace std;

const int maxn = 16;

bool visit[maxn+1];

int out[maxn+1];

void gao(int d, const int n)for (int i=1; i<=n; ++i) if (!visit[i])

}int main()

c語言 輸入一個正整數n,輸出n的所有因子

3樓:

1、定義整型變數,用於程式的運算。

2、輸入兩個大於2的正整數,儲存在變數n和m中。

3、獲取臨時變數t的值為m,設定i的初值為2。

5、用i對整數m求餘,儲存在變數r中。

6、判斷i是否m的質因子,如果是則繼續判斷是否n的質因子,如果不是n的質因子,則退出迴圈。

7、如果i不是質因子,則自加1,繼續判斷。

8、執行程式,輸入兩個大於2的正整數後,計算機就會判斷整數n是否包含m的所有質數因子,並輸出結果。

4樓:金魚

#include

void main()

{int t,i;

printf("please input the number:");

scanf("%d",&t);

for(i=1;i

5樓:汐日南莘

#include

#include

int main(void)

while(x<=m);}

6樓:仙戈雅

#include

#include

int main(void)

while(x<=m);

return 1; // main函式有返回值,此處新增返回值}

7樓:巨潤利

好多錯誤好多錯誤好多錯誤好多錯誤

/*輸入一個正整數n,輸出n的所有因子*/#include

#include

int main(void)

while (n <= m);}

8樓:倒黴熊

if (x=0)

修改為if (x==0)

賦值和相等不是一個符號

9樓:匿名使用者

迴圈條件應該是while(n<=m)

C語言輸入正整數n,輸出1 n,每行一個

輸入一個整數n?還是一串整數?輸入一個正整數n,再輸入n個整數,輸出最小值 c語言 include int main int i,n,t,min scanf d n 輸入。個數scanf d t 輸入第一個數min t 令最小值等於第一個數。for i 1 i下n 1個數。scanf d t if ...

用c語言編寫程式 從鍵盤輸入n 0《n《100 個整數

1 次數最多 2 在次數最多的基礎上,數值最大 以下為程式 include 設定最大值 define max 100 typedef struct record record int i ist int array,int index,record rd return flag int findma...

c語言中,1《n代表什麼意思,C語言中n 1是什麼意思

臨淵羨魚 如下 n 和 n的作用都是讓n自減1,如原先n為5,n 或 n之後n就變為了4。他們的區別在於 n 這個表示式的值是n自減之前的值,如 int n 5 int a n 此時a的值為5 n 這個表示式的值是n自減之後的值,如 int n 5 int a n 此時a的值為4 例如 n 10 k...