代码如下:
#include<iostream>using namespace std;int main(){ int a[10];//定义十个元素的数组 int i=0,j=0;//定义数组中用于计数的变量。 int temp=0;//定义用于数组当中两个元素相互交换时候要用到的中间量! for (i = 0; i < 10; i++) cin >> a[i]; for (i = 0; i < 9; i++) { for (j = i+1; j < 10; j++) { if (a[j] > a[i]); { temp = a[i]; a[i] = a[j]; a[j] = temp; } } } for (i = 0; i < 10; i++) cout << a[i] << " "; return 0;}
本来想要做的是从大到小排序,但是结果显示却是变成了反向排序,运行截图如下:
这是什么情况呀,求各位大神指导!
C++中将数组从大到小排序
}\/\/冒泡排序
在c++中怎样编一段按照数从大到小的顺序并输出的程序
\/\/两个待排序数组, 分别用qsort和sort排序int n1, n2;\/\/两个数组元素个数cout << "请输入第一个数组元素个数: " << endl;cin >> n1;cout << "请输入第一个数组各个元素" << endl;for (int i = 0; i < n1; ++ i)cin >> arr1[i];qsort(arr1, n1, sizeof(arr1[0]), q...
C++程序:输入n个数,将这些数从大到小排列输出
include<iostream>#include<window.h>using namespace std;int main(){ \/\/指定数组长度 int n; cin>>n; \/\/动态分配内存 int* p=new int[n]; \/\/顺序输入 for(int i=0;i<n;i++) cin>>p[i]; \/\/冒泡排序 int t=0; for(int i=1;i<n;i++) ...
C++用sort排列一维数组(升序、降序、期间排序)
为了完成从大到小的排序,我们只需要一个bool类型的函数,一般把这个函数写为cmp函数,函数内容如下方所示。接下来,sort的参数有一些变化 sort(参数一,参数二,cmp);没错,第三个参数便是我们刚刚写的cmp函数,有了它,我们便可以将数据从大到小进行排列。完整代码如下 样例 6 \/\/数据个数 3 1 ...
C++, 输入一个3*3的数组,由大到小排序,在输出,结果有问题,求解答_百度...
int a[3][3]; 是函数里的局部量,通过 return &a[0][0]; 数值是不能带回来的,因为退出函数数组就没了。必须声明为 static.函数修改如下:int *shuzhu(int m,int n){ static int a[3][3];int i,j;for(i=0;i<m;i++) for(j=0;j<n;j++) cin>>a[i][j];int *d;d=...
C++之如何将N个实数由大到小排序
回答:n个实数用数组a描述。 本例提供用选择排序方法与冒泡排序方法分别实现n个实数由大到小排序的函数搜索。 算法一:选择排序。 选择排序需反复进行求最大值与交换两个数这两种住房基本操作。 对a[o]、a[1]、…、a[n一1]由大到小排序:先求所有数的最大值,然后将最大值与a[o]进行交换;...
...采用选择法对随机数组中的10个数做从大到小的排序
从大到小的简单选择排序,希望可以帮助你:void Sort(int * array, int length) \/*对记录数组array做简单选择排序,length为待排序记录的个数*\/ { int temp;for ( i=0 ; i< length-1 ; i++) \/\/n-1趟排序 { int index=i; \/\/假设index小标的元素最大 for ( j=i+1 ; j < ...
排序算法的C++算法
C++自带的algorithm库函数中提供了排序算法。自带排序算法的一般形式为:sort(arr+m,arr+n);\/\/将数组arr的下标为m的元素到下标为n-1的元素进行从小到大排序sort(arr+m,arr+n,comp);\/\/与sort(arr+m,arr+n)相比,这个写法可以自己定义排序的规则,其中,comp为自定义的函数对于sort(arr+m,arr+n...
c++,输入数值排序求最大最小,求大神帮我看一下哪错了。
{\/\/注意,下面的for循环应该放在这花括号里面 for(int j=0;j<i;j++){\/\/注意,此处的for括号里的写法,还有,下面的if体应该放在这一层的花括号里。if(a[i]<a[j]){ t=a[i];a[i]=a[j];a[j]=t;\/\/这样数组就是从大到小排列的,输出第一个,最后一个就行了。} } } ...
C++:有15个数按又大到小顺序放在一个数组中,输入一个数,要求用折半法查...
比如上题,要在一个15个元素的递增数组S中查找数值A,查找范围是S[0]-S[14],那么首先是找出中间点S[7]作比较,如果S[7]等于A就是找到了,如果S[7]大于A,则说明A在S[0]-S[6]之间;反之,如果S[7]小于A,则说明A在S[8]-S[14]之间,然后再重复上述步骤,找出范围内的中间点进行...