我举个简单例子,一个一维数组int a[5]={3, 8, 4, 7, 6}
按降序排列以后是int b[5]={8, 7, 6, 4, 3}
最大的元素8在原来的数组中是第二位,7是第四位,等等
得到一个表示原来位置的数组int c[5]={2, 4, 5, 3, 1}
怎么用C语言边啊?
å¯ä»¥å ç¨å泡æåºå¯¹æ°ç»è¿è¡æåºï¼ç¶å对æåºçæ°ç»è¿è¡éåï¼æ¾åºå ¶å¨æåºä¹åæ°ç»ä¸çä½ç½®ï¼åè代ç å¦ä¸ï¼
#include<stdio.h>用C语言对一维数组排序,并输出原来的位置
b[N],c[N],i,j,temp;for(i=0;i<N;i++){\/\/输入数组,并用b保存数组a的值 scanf("%d",&a[i]);b[i]=a[i];}for(i=0;i<N-1;i++)\/\/对a从大到小冒泡排序 for(j=0;j<N-i-1;j++)if(a[j]<a[j+1]){temp=a[j];...
用C语言对一维数组排序,并输出原来的位置
冒泡排序法实现,参考代码如下:include "stdio.h"define N 10 int main( ){ int i,j,t;int d[N]={25,47,68,114,77,35,75,24,110,88};for(i=0;i<N;++i)printf("%d ",d[i]);printf("\\n");for(i=0;i<N;++i)for(j=0;j<N-i-1;++j)if(d[j]>d[j+1]){ t=d[...
用C语言对一维数组排序,并输出原来的位置
b[N],c[N],i,j,temp; for(i=0;i<N;i++){\/\/输入数组,并用b保存数组a的值 scanf("%d",&a[i]); b[i]=a[i]; } for(i=0;i<N-1;i++)\/\/对a从大到小冒泡排序 for(j=0;j<N-i-1;j++) if(a[j]...
C语言(简单的)编写程序输入一维整形数组a[10],将其按由小到大排序后输 ...
这个应该用起泡法排序算法。include<stdio.h> int main(){ int a[10];int i,j,k;printf("input 10 numbers:\\n");for(i=0;i<10;i++){\/\/输入十个数,一次循环输入10次 scanf("%d",&a[i]);printf("\\n");\/\/换行 for(j=0;j<9;j++)\/\/从小到大换行经典方法四行 for(i=0;i<...
C语言中怎样实现一维数组的倒序输出
实现一维数组的倒序输出,在C语言中可通过交换数组元素的位置,使得原本处于数组开头的元素移动到最后,其余元素依次前移,以此达到倒序输出的效果。下面以一个示例来说明如何操作。首先,定义一维数组arr,包含字符元素{'9','4','2','7','5'}。然后定义整型变量i, j, p。变量i用于遍历数组,变量j...
用C语言如何使用函数调用来做一维数组排序?谢谢了
\/\/ 按增量序列dlta[0..t-1]对顺序表L作希尔排序 int dlta[6] = {50,25,12,6,3,1};for (int k = 0; k < 6; ++k)ShellInsert(L, dlta[k]);} \/\/ ShellSort Partition(int L[], int low, int high) { \/\/ 交换顺序表L中子序列L.r[low..high]的记录,使枢轴记录到位,...
c语言中,用一维数组排序十个整数,怎么做
int main(){ int i,j,min,t,a[10]={2,4,8,3,6,9,7,222,64,88};printf("排序前的序列为:\\n");for(i=0;i<10;i++)\/\/输出排序前的序列 { printf("%5d",a);} printf("\\n");for(i=0;i<9;i++){ min=i;\/\/把每次循环的第一个数作为最小值 for(j=i+1;j<10;j+...
编写C语言程序,查找一个一维数组中的最大值,打印出该元素及其位置。
include <stdio.h> int main(void){ int a[5],j,i,k;puts("输入数值 以空格间隔");for(i=0;i<5;i++)scanf("%d",&a[i]);j=a[0];for(i=1;i<5;i++){ if (a[i]>j){j=a[i];k=i;} } printf("最大数为=%d 是第%d个元素",j,k);} ...
C语言:随机生成一个长度为15的一维数组,将奇数元素移到数组前面并将数组...
include "stdio.h"include "stdlib.h"include "time.h"define N 15 int main(int argc,char *argv[]){ int a[N],i,j,k;srand((unsigned)time(NULL));for(i=0;i<N;i++)\/\/数组随机赋值 printf("%3d",a[i]=rand()%100);printf("\\n\\nAfter processing:\\n");for(i=0;i<N;i...
用C语言如何将一个一维数组中的元素随机排序
include include include intmain(){ inti,j,n,k,t,a[100];srand((unsigned)time(NULL));