题目描述输入n个整数,并存放在一维数组中,找出最大数与最小数所在的下标位置,并把两者对调,然后输出调整后的n个数。
输入
先输入整数个数n (2<=n<=10000)
然后输入n个整数
输出
调整位置后的n个整数,n个整数之间用一空格隔开。样例输入6 4 3 -3 -1 234 4355样例输出4 3 4355 -1 234 -3
有木有解释呀???_?
追答#include <stdio.h>解释解释呗,,
追答int main(void){
int a[10000],n,i,imax,imin;
printf("Input n(2a[i]) imin=i;//用imin记录当前最小数的下标
}
i=a[imax];//通过最大数的下标和最小数的下标来交换这两个数
a[imax]=a[imin];
a[imin]=i;
for(i=0;i<n;i++)//打出来看看……
printf("%d ",a[i]);
printf("\n");
return 0;
}
C语言程序:数组中最大与第一个数对调,最小与最后一个对调
void swapvar(int s,int t)\/\/交换的过程函数 { int temp;temp=a[s];a[s]=a[t];a[t]=temp;} int main(){ scanf("%d",&n);for (i=0;i<n;i++) scanf("%d",&a[i]);\/\/读入 for (i=maxn=minn=0;i<n;i++)\/\/查找,其中maxn和minn分别表示最大和最小元素在数组中下...
在c语言中如何将数组的最大值与最小值互换位置,求大神解答!!!_百度...
找到最大和最小值的下标,交换,例如:include <stdio.h> main(){ int a[10]={10,2,3,4,5,6,7,8,9,10},n=10;int i1,i2,i;i1=0;for (i=0;i<n;i++)if (a[i]<a[i1]) i1=i;i2=0;for (i=0;i<n;i++)if (a[i]>a[i2]) i2=i;i=a[i1]; a[i1]=a...
C语言 输入10个整数,用函数编程将其中最大数与最小数的位置互换然后输出...
1.找出数组中的最大值和最小值索引位置,然后将其交换即可 include <stdio.h>\/\/ 交换最大、最小值位置void SwapLimVal(int *src, int len){ int max , min, maxlen = 0, minlen = 0; max = min = src[0]; \/\/ 初始化最大、最小值暂时为第一个 for (int i = 1; ...
C语言输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出...
导致最小在a[0] 最大在a[4] 与要求不符.修改方式 就是 m=array[max];array[max]=array[0];array[0]=m;if(min==0) min=max;\/\/如果min已经被换走了,那么把min赋值成被换的位置.m=array[min];array[min]=array[4];array[4]=m;...
C语言编程:输入一维数组的10个元素,并将最小值与第一个数交换,最大值...
include <stdio.h>int main() {int a[10],i,t,imin,imax,n = 10;printf("输入10整数(空格隔开):");for(i = 0; i < n; ++i)scanf("%d",&a[i]);printf("处理前:\\n");for(i = 0; i < n; ++i) printf("%d ",a[i]);printf("\\n");imin = imax = 0;for(i = ...
C语言编程:输入n个数,将最大的与第一个数交换,最小的与最后一个数交换...
include <stdio.h>void swap(int *a, int *b){printf("%d, %d\\n", *a, *b);int t = *a;*a = *b;*b = t;}void max_min(int *p, int n){int l = n;int *max = p, *min = p;while (n--) {min = *p > *min ? min : p;p++;}swap(min, --p);while (l...
...将最大值与第一个元素对调,将最小值与最后一个元素对调
{int a[10];int max=0,min=0,temp=0;int i=0;for(i=0;i<=9;i++)scanf("%d",&a[i]);for(i=1;i<=9;i++){ if (a[i]a[max])max=i;} temp=a[max],a[max]=a[0],a[0]=temp;temp=a[min],a[min]=a[9],a[9]=temp;for(i=0;i<=9;i++)printf("%d ",...
C语言任意输入十个数,交换最大值和最小值然后输出。
void main(){ int a[10],max,min,maxpos=0,minpos=0,i;\/\/此处被改过 int temp;printf("Input ten numbers:\\n");for(i=0;i<10;i++){ scanf("%d",&a[i]);}\/\/改过,添加了} max=min=a[0];\/\/添加一句,初始化max、min for(i=0;i<10;i++)\/\/改 {\/\/改 if(a[i]>max)...
c语言:输入a[10],将最大的元素与第一个元素交换,最小的元素与最后一个...
int min=0;int minindex = 0;int max=0;int maxindex = 0;int i = 0;min = a[0];max = a[0];for (i=0;i<10;i++){ if (a[i]>=max) { max = a[i]; maxindex = i; } if (a[i]<=min) { min = a[i]; minindex = i; }}a[...
用C语言任意输入十个整数,输出其中的最大最小值,最小的数与第一个数交...
这个是什么意图,还要输出么...???如果要输出的话,可以开始定义两个数组,复制一下,然后操作第一个数组,找出最大值和最小值,再和第二个数组的第一个元素,最后一个元素,交换哈!就行了啊,像这样的问题,最好自己做做!PS;我也是新手,有说的不对的建议拍砖!