1120: 最值交换
来源:互联网 发布:淘宝上传图片模糊 编辑:程序博客网 时间:2024/06/01 23:59
1120: 最值交换
Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 4765 Solved: 2076
SubmitStatusWeb Board
Description
有一个长度为n的整数序列。请写一个程序,先把序列中的最小值与第一个数交换,再把最大值与最后一个数交换。输出转换好的序列。 分别编写两个函数MinIndex()和MaxIndex()来计算最小值下标和最大值下标。
int MinIndex(int a[], int n); //函数返回数组a中最小元素的下标
int MaxIndex(int a[], int n); //函数返回数组a中最大元素的下标
数组元素的输出调用函数PrintArr()。
Input
输入包括两行。
第一行为正整数n(1≤n≤10)。
第二行为n个正整数组成的序列,保证没有重复元素。
Output
输出转换好的序列。数据之间用空格隔开。
Sample Input
55 4 1 2 3
Sample Output
1 4 3 2 5
HINT
Source
#include<stdio.h>int zuida(int a[],int n);int zuixiao(int a[],int n);int shuchu(int a[],int min,int max,int n);int main(){ int a[10],i,j1,n,min,max,j; j=j1=0; scanf("%d",&n); for(i=0; i<n; i++) scanf("%d",&a[i]); min=zuixiao(a,n); j=a[0]; a[0]=a[min]; a[min]=j; max=zuida(a,n); j1=a[n-1]; a[n-1]=a[max]; a[max]=j1; shuchu(a,min,max,n); return 0;}int zuixiao(int a[],int n){ int i,min,c; c=0; min=a[0]; for(i=1; i<n; i++) { if(min>a[i]) { min=a[i]; c=i; } } return c;}int zuida(int a[],int n){ int i,c,max; c=0; max=a[0]; for(i=1; i<n; i++) { if(max<a[i]) { max=a[i]; c=i; } } return c;}int shuchu(int a[],int min,int max,int n){ int i; for(i=0; i<n-1; i++) printf("%d ",a[i]); printf("%d",a[n-1]);}
阅读全文
0 0
- 1120: 最值交换
- 1120: 最值交换
- zzuli OJ 1120: 最值交换
- ZZULIOJ【1120】最值交换【数组】
- hpuoj【1034】交换最值的位置【数组】
- 值交换
- 值交换
- 值交换
- 值交换
- 值交换
- 交换值
- 第10周-不借助中间变量交换求三个数的最值
- 最快速的两数交换
- 值交换和字符交换的对比
- 值交换与字符串交换的对比
- java Collections工具类的 一些功能(查找,最值,乱序,逆序,排序,交换,替换,让集合线程同步)
- 交换变量的值
- 相反排序交换值
- iOS_Cordova开发教程
- Deep Spatio-Temporal Residual Networks(深度时空残差神经网络)
- jacob word竖排文字变横排
- 使用Mercurial获取OpenJDK源码
- Windows快捷命令
- 1120: 最值交换
- Jzoj5456【NOIP2017提高A组冲刺11.6】奇怪的队列
- java实现多线程的三种方式(thread、runnable、callable)
- centos 下php mysql nginx vsftpd 正确安装配置
- XAMPP使用中碰到【Maximum execution time of 30 seconds exceeded】问题
- 改变对象的字符串提示
- 数字游戏问题(迭代java)
- Ubuntu 16.04屏幕分辨率无法修改的解决方法
- nmap介绍