Re: ffd

看板b96902HW作者 (purincess)時間11年前 (2013/04/26 20:22), 編輯推噓1(101)
留言2則, 2人參與, 最新討論串2/3 (看更多)
都2013年了還在寫這種C程式 寫個C++11才潮好嘛 #include <iostream> #include <vector> #include <algorithm> using std::cout; using std::cin; using std::endl; using std::vector; using std::generate; using std::for_each; int main(){ auto o = [](char a, char b, char c) -> void { cout << a << b << c << " ";}; char t; cout << "請輸入一個英文字母:"; cin >> t; // assume input is valid vector<char> cs(t - 'A' + 1); generate(cs.rbegin(), cs.rend(), [&t]() -> char { return t--; }); for_each(cs.begin(), cs.end(), [&o](char c) -> void { o(c, c, c); }); for_each(cs.begin(), cs.end(), [&o, &cs](char c) -> void { for_each(cs.begin(), cs.end(), [&o, &cs, &c](char d) -> void{ if(c != d) o(c, c, d); }); }); cout << endl; } -- tested with g++ 4.7.1 with --std==c++11 ※ 引述《eden0315 (貢丸^^~)》之銘言: : 請問一個程式問題: : 我輸入C 會跑出AAA BBB CCC AAB AAC BBA BBC CCA CCB : 我改了很久都改不出來這樣的排列組合 : #include<stdio.h> : #include<stdlib.h>//AAA BBB CCC AAB AAC BBA BBC CCA CCB .... : int main(){ : char i,j,k; : char op; : char a,b,c,d; : printf("請輸入一個英文字母:"); : scanf("%c",&op); : for(i='A';i<=op;i++) : { : for(j='A';j<=op;j++) : printf("%c",i); : printf(" "); : } : for(a='A';a<=op;a++) : { : for(b=op;b>'A';b--)//印次數 : { : for(c=op;c>='A';c--)//印出幾個字 : if(c>'A') : printf("%c",a); : if(c='A'){ : for(d='A';d<=op;d++) : if(d!=a) : printf("%c",d); : } : printf(" "); : } : } : system("pause"); : return 0; : }請問一下該怎麼改 這是我寫到一半的 -- 我是b94 = =" -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.30.46 ※ 編輯: purincess 來自: 140.112.30.46 (04/26 20:54)

05/26 06:22, , 1F
看那精美的system("pause");你覺得有可能會用c++11嗎XD
05/26 06:22, 1F

06/09 10:37, , 2F
對不起我錯惹QQ
06/09 10:37, 2F
文章代碼(AID): #1HUd6X0X (b96902HW)
討論串 (同標題文章)
文章代碼(AID): #1HUd6X0X (b96902HW)