在线编译器(支持C,C++等较多语言)

        偶然发现了这个在线编译器,试用了一下,感觉挺好的,不需要注册,网址为:http://codepad.org/

        运行下面程序:

 

#include <iostream>
using namespace std;

void swap(char *p1, char *p2)
{
	char c = *p1;
	*p1 = *p2;
	*p2 = c;
}

void permute(char *pStr, char *pStart)
{
	char *p = NULL;
	static int i = 0;

	if('\0' == *pStart)
	{
		cout << ++i << ":" << pStr << endl;
	}
	else
	{
		for(p = pStart; *p != '\0'; p++)
		{
			swap(pStart, p);
			permute(pStr, pStart + 1);
			swap(pStart, p);
		}
	}

}

void printPermute(char *pStr)
{
	if(NULL == pStr)
		return;

	permute(pStr, pStr);
}

int main()
{
	char str[] = "abcde";
	printPermute(str);

	return 0;
}

       结果为:

 

 

1:abcde
2:abced
3:abdce
4:abdec
5:abedc
6:abecd
7:acbde
8:acbed
9:acdbe
10:acdeb
11:acedb
12:acebd
13:adcbe
14:adceb
15:adbce
16:adbec
17:adebc
18:adecb
19:aecdb
20:aecbd
21:aedcb
22:aedbc
23:aebdc
24:aebcd
25:bacde
26:baced
27:badce
28:badec
29:baedc
30:baecd
31:bcade
32:bcaed
33:bcdae
34:bcdea
35:bceda
36:bcead
37:bdcae
38:bdcea
39:bdace
40:bdaec
41:bdeac
42:bdeca
43:becda
44:becad
45:bedca
46:bedac
47:beadc
48:beacd
49:cbade
50:cbaed
51:cbdae
52:cbdea
53:cbeda
54:cbead
55:cabde
56:cabed
57:cadbe
58:cadeb
59:caedb
60:caebd
61:cdabe
62:cdaeb
63:cdbae
64:cdbea
65:cdeba
66:cdeab
67:ceadb
68:ceabd
69:cedab
70:cedba
71:cebda
72:cebad
73:dbcae
74:dbcea
75:dbace
76:dbaec
77:dbeac
78:dbeca
79:dcbae
80:dcbea
81:dcabe
82:dcaeb
83:dceab
84:dceba
85:dacbe
86:daceb
87:dabce
88:dabec
89:daebc
90:daecb
91:decab
92:decba
93:deacb
94:deabc
95:debac
96:debca
97:ebcda
98:ebcad
99:ebdca
100:ebdac
101:ebadc
102:ebacd
103:ecbda
104:ecbad
105:ecdba
106:ecdab
107:ecadb
108:ecabd
109:edcba
110:edcab
111:edbca
112:edbac
113:edabc
114:edacb
115:eacdb
116:eacbd
117:eadcb
118:eadbc
119:eabdc
120:eabcd


          该在线编译器有点类似于OJ系统。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值