?? d7r4.cpp
字號:
#include "iostream.h"
#include "fstream.h"
#include "stdlib.h"
void sort(int n, double ra[])
{
int i,j,l,ir;
double rra;
l = int(n / 2) + 1;
ir = n;
do
{
if (l > 1)
{
l = l - 1;
rra = ra[l];
}
else
{
rra = ra[ir];
ra[ir] = ra[1];
ir = ir - 1;
if (ir == 1)
{
ra[1] = rra;
return;
}
}
i = l;
j = l + l;
while (j <= ir)
{
if (j < ir)
{
if (ra[j] < ra[j + 1])
{
j+=1;
}
}
if (rra < ra[j])
{
ra[i] = ra[j];
i = j;
j += j;
}
else
{
j = ir + 1;
}
}
ra[i] = rra;
}while(1);
}
void main()
{
//program d7r4
//for routine sort
double a[101];
int i,j;
ifstream fin;
fin.open("d:\\vc常用數值算法集\\data\\tarray.dat",ios::in|ios::nocreate);
if (!fin)
{
cerr<<"could not open d:\\vc常用數值算法集\\data\\tarray.dat"<<endl;
exit(1);
}
for (i=1; i<=100; i++)
{
fin>>a[i];
}
fin.close();
//print original array
cout<<"Original array:"<<endl;
cout<<endl;
for (i = 1; i<=10; i++)
{
for (j = 1; j<=10; j++)
{
cout.width(7);
cout.setf(ios::left);
cout<<a[10 * (i - 1) + j];
}
cout<<endl;
}
//sort array
sort(100, a);
//print sorted array
cout<<endl;
cout<<"Sorted array:"<<endl;
for (i = 1; i<=10; i++)
{
for (j = 1; j<=10; j++)
{
cout.width(7);
cout.setf(ios::left);
cout<<a[10 * (i - 1) + j];
}
cout<<endl;
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -