oj2017: 排序问题
来源:互联网 发布:mac 最好的五笔输入法 编辑:程序博客网 时间:2024/06/08 02:40
问题描述:输入10个整数,将它们从小到大排序后输出,并给出现在每个元素在原来序列中的位置。
作者:何知令
发表时间:2017年3月2日
输入:输入数据有一行,包含10个整数,用空格分开。
作者:何知令
发表时间:2017年3月2日
输入:输入数据有一行,包含10个整数,用空格分开。
输出:输出数据有两行,第一行为排序后的序列,第二行为排序后各个元素在原来序列中的位置。
代码:
/*问题描述:输入10个整数,将它们从小到大排序后输出,并给出现在每个元素在原来序列中的位置。作者:何知令发表时间:2017年3月2日输入:输入数据有一行,包含10个整数,用空格分开。输出:输出数据有两行,第一行为排序后的序列,第二行为排序后各个元素在原来序列中的位置。 */#include <stdio.h>#include <stdlib.h>int main(){ int i,j,have; int t; int num1[10],num2[10]; for(i=0; i<10; i++) scanf("%d",&num1[i]); for(i=0; i<10; i++) num2[i]=num1[i]; while(1) { have=0; for(i=9; i>0; i--) { if(num2[i]<num2[i-1]) { t=num2[i]; num2[i]=num2[i-1]; num2[i-1]=t; have++; } } if(have==0) break; } for(i=0;i<10;i++) { printf("%d",num2[i]); if(i!=9) printf(" "); } printf("\n"); for(j=0; j<10; j++) { for(i=0; i<10; i++) { if(num2[j]==num1[i]) { printf("%d",i+1); if(j!=9) printf(" "); break; } } } return 0;}程序运行结果展示:
知识点总结:数组操作
学习心得:做了好久,控制结构开始没想好,错了许久
0 0
- oj2017: 排序问题
- OJ2017题、2018题
- 【杭电oj2017】字符串统计
- 第十七周—C语言 oj2017
- 2017-12-10杭电OJ2017《字符串统计》
- 排序问题-归并排序
- 排序问题-快速排序
- 【排序问题】选择排序
- 排序问题
- 排序 问题
- 排序问题
- 排序问题~~
- 排序问题
- 排序问题
- 排序问题
- 排序问题
- 排序问题
- 排序问题
- leecoda第二题
- 9.13 C和C++ 13.8编写一个智能指针类
- SQL Server 提高执行效率的16种方法
- 2017.03.02 线程的关闭
- 机器学习实践系列之14
- oj2017: 排序问题
- 算法训练 统计字符次数
- Tomact配置(详细)
- C++递归算法经典实例详解
- 网球追踪器
- $(function(){});只加载一次,jQuery预加载函数只加载了一次问题
- 3 faster rcnn的anchor产生问题
- 算法训练 数的统计
- 百万级数据读写Excle