【题目】

从键盘输入10个整数存放在数组a中,然后对数组a中的10个整数按从小到大连续编号,要求不能改变数组a中元素的顺序,且相同的整数要具有相同的编号。最后输出数组a及其元素的编号。

【源代码】

#include<stdio.h>
int main()
{/*1、冒泡排序2、排序后的数组去除冗余数字3、原数组与处理好的数组比较,找到原数组每个数的顺序号4、输出 */ int a[10],b[10],c[10];int i,j,n,t;for(i=0;i<10;i++,j++){scanf("%d",&a[i]);b[i]=a[i];}for(i=0;i<10;i++)//冒泡排序 {for(j=i;j<10;j++){if(b[i]>b[j]){t=b[i];b[i]=b[j];b[j]=t;}}  }//a[10]= 5    3    4    7    3    5    6    9   21     100//b[10]= 3    3    4    5    5    6    7    9   21     100 for(j=1,i=1;j<10;j++)//更新数组b[10]的值,让相同的数字只出现一次,同时记录最后一个值的下标{if(b[i-1]!=b[j]){b[i]=b[j];i++;}//printf("%d ",b[i]);//更新的过程中b[i]!=b[j]!=排序后的数组 //printf("%d\n",b[j]);//更新的过程 }n=i;/* //更新后的数组 for(i=0;i<n;i++){printf("%d ",b[i]);}printf("\n");*///b[8]=  3    4    5    6    7    9   21   100 //a[10]= 5    3    4    7    3    5    6    9   21     100for(j=0;j<n;j++)//用b[10]的值来查照a[10]的下表,并按顺序记录到对应的c[10]中 {for(i=0;i<10;i++){if(a[i]==b[j]){c[i]=j+1;}}}//输出结果 for(i=0;i<9;i++){printf("%d ",a[i]); }printf("%d\n",a[9]);for(i=0;i<9;i++){printf("%d ",c[i]);}printf("%d",c[9]);return 0;
} 

【运行结果】

【经典题目——排序】1、数组元素编号相关推荐

  1. php 数组随机排序_php 数组元素随机排序代码

    php教程 数组元素随机排序代码 因为工作需要我要对我定义好的数组进行随机排序,每一次循环都要是不同的,下面我们利用了php shuffle函数随机对数组元素进行排序.方法非常简单. shuffle( ...

  2. matlab数组元素的比较大小排序,MATLAB数组元素的排序

    MATLAB sort() 函数用来对数组元素进行排序,它有以下几种常见的用法: B = sort(A)  %使用默认规则对数组排序 B = sort(A, dim)  %dim指定排序的维度 B = ...

  3. python求数字平均值_Python简单计算数组元素平均值的方法示例

    本文实例讲述了Python简单计算数组元素平均值的方法.分享给大家供大家参考,具体如下: Python 环境:Python 2.7.12 x64 IDE : Wing IDE Professional ...

  4. c语言编程 输入螺旋数组,C语言 经典题目螺旋矩阵 实例详解

    C语言 经典题目螺旋矩阵 实例详解 C语言 经典题目螺旋矩阵 //N阶螺旋矩阵 #include #include int main() { int N,i,j,n,num=1; int a[10][ ...

  5. LeetCode:数组刷题(17道经典题目)

    LeetCode 数组刷题(17道经典题目) 本文带来的是以数组为主题的经典题目,主要实现是C++,部分题目也用Python实现了. 704. 二分查找 35.搜索插入位置 34. 在排序数组中查找元 ...

  6. 主元排序法c语言程序,C语言算法竞赛入门(二)---数组元素移动 、排序问题 、猴子选大王问题...

    数组元素移动 [问题描述]调整输入数组A[0..n],将其分为两部分,左边所有元素为奇数,右边所有元素为偶数 [输入形式]a0,b1,b2,a1,a2,b3,a3,a4 [输出形式]a0,a1,a2, ...

  7. 算法--排序--寻找数组内第K大的元素

    此题目,需要用到快速排序里的划分数组操作: 快排参考:https://blog.csdn.net/qq_21201267/article/details/81516569#t2 先选取一个合适的哨兵( ...

  8. 算法设计——用分治法查找数组元素的最大值和最小值、用分治法实现合并排序、最小费用问题、树的最大连通分支问题(代码实现)

    代码链接:pan.baidu.com/s/15inIth8Vl89R1CgQ_wYc2g  提取码:gf13 算法分析与设计第 1 次实验 时间 2020.3.31 地点 软件大楼 127 实验名称 ...

  9. 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。(js代码)

    1.题目描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转. 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素. 例如数组{3,4,5,1,2}为{1,2,3,4,5}的 ...

最新文章

  1. MATLAB编程规范
  2. 一个div 上下两行_用 Python 撸一个 Web 服务器第4章:动态渲染数据
  3. 鸿蒙系统出来没有,呜呼哀哉!历尽艰辛研发出鸿蒙系统,却无厂商敢用
  4. Android USB 开发详解
  5. http://www.cda.cn/view/25735.html
  6. 【转载】雨更大了的飞鸽传书
  7. Q77:怎么用Ray Tracing画仿射变换之后的图形
  8. Spring中com.sun.proxy.$Proxy12 cannot be cast to 包名.类名错误
  9. Oracle 数据库,远程访问 ora-12541:TNS:无监听程序
  10. TensorFlow中的compile和fit操作,简化神经网络模型代码
  11. 优控触摸屏使用手册_中达优控PLC触摸屏一体机说明书.pdf
  12. swat模型_文献分享——欧洲大陆尺度水质模型高分辨率大尺度SWAT模型率定及不确定性分析...
  13. socket编程常用函数
  14. 浏览器自定义横向滚动条_自定义滚动条–跨浏览器解决方案
  15. 德州理工大学计算机科学专业录取,美国留学:德州理工大学录取要求
  16. 2022年12月奥鹏网络教育大学英语B统考题库试题
  17. 微信公众平台python_python搭建微信公众平台
  18. java mvc设计_javaweb之MVC设计模式
  19. 【珍爱生命,远离苏宁】在天猫苏宁易购旗舰店买到有问题的ipad,点进来,一起维权!维权群号:567621779
  20. 01- NumPy 数据库 (数据库)

热门文章

  1. 北大集训2020游记
  2. 在 SAP BTP 上体验 SAP HANA Cloud 试用版本
  3. 威客相当地址收藏_无需整理
  4. 详细设计说明书编写规范
  5. nginx浅析4-限流(秒杀,高并发)
  6. sqli-labs靶场challenges第54-75关(超详细)
  7. ruby的DIR.pwd
  8. ODBC 连接 ORACLE数据库 代码
  9. commonjs 和esm
  10. 如何安装和使用 Windows XP 的故障恢复控制台