📄 曹俊-6分.txt
字号:
#include <fstream.h>
//--------------------- 变量、函数定义 开始 ------------------
ofstream myoutf("output.txt"); //输出到文件,全局变量
//--------------------- 变量、函数定义 结束 ------------------
void Swap(int & a,int & b)//引用调用,修改参数的实际值
{
int temp;
temp = a;
a = b;
b = temp;
}
void Perm(int list[], int k, int m)
{ //全排列算法 -- 递归
//产生list[k:m]的所有排列
if (k == m)
{
for (int i = 0; i<=m; i++)
{
myoutf << list[i] << " ";
cout << list[i] << " ";
}
myoutf << endl;
cout << endl;
}//if
else //多元素序列,递归产生排列
{
for (int i=k; i<=m; i++)
{
Swap(list[k],list[i]);
Perm(list, k+1, m);//递归
Swap(list[k],list[i]);
}//for
} //else
} //void Perm
void main() {
int * array; //定义一个整型数组指针
int count; //定义数组大小变量
ifstream myinf("input.txt",ios::nocreate);
if (myinf.fail())
{
cerr << "读入文件出错";
return;
}
myinf >> count;
//生成数组,用于下面的排列
array = new int[count]; //申请堆空间
for(int i=0;i<count;i++)
{
array[i] = i+1;
cout << array[i] << endl;
}
Perm(array, 0, count-1);
delete(array); //释放堆空间
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -