数据怎么没有交换?
#include <iostream>
//#include <stdio.h>
//#include <conio.h>
//#include <cmath>
using namespace std;
void main()
{int s[100],n;
cout < < "input n " < <endl;
cin> > n;
cout < < "input s[n] " < <endl;
for(int i=1;i <=n;i++)
cin> > s[i];
/*for(int j=1;j <=n;j++)
for(int k=j;k <=n;k++)
if(s[j]> s[k])
{int temp=s[j];
s[j]=s[k];
s[k]=temp;
}
for(int i=1;i <=n;i++)
cout < <s[i] < < " ";
cout < <endl;*/
int *p,*q;
p=s;
q=s;
while(*q!=s[n])
q++;
while(*p!=*q)
{
int tm=*p;
*p++=*q;
*q--=tm;
}
for(int i=1;i <=n;i++)
cout < <s[i] < < " ";
system( "pause ");
}
[解决办法]
数组从下标0开始计算。