题目:急急。。哪为高手帮忙看下!!感激不尽!

来源:百度知道 编辑:UC知道 时间:2024/06/24 18:25:15
输入十个整数,将其中的最小的数与第一个数互换,最大的数与最后一个数互换。为什么我按下面编只是把最小值和最大值分别赋给第一个和最后一个而不是互换!!
#include<stdio.h>
main()
{

int number[10];

input(number);
max_min_value(number);
output (number);
}

input(int number[])
{
int i;

for(i=0;i<10;i++)
scanf("%d",&number[i]);
return ;
}

max_min_value(int number[])
{
int i, max, min,temp;
max=min=number[0];
for(i=0;i<10;i++)
{
if(number[i]>max)
max=number[i];
else if(number[i]<min)
min=number[i];
}
{temp=number[0];number[0]=min;min=temp;}
{temp=number[9];number[9]=max;max=temp;}
return ;
}

output(int number[ ])
{
int i;

for(i=0;i<10;i++)
printf("%5d",number[i]);
}

/* 程序 max_min.cpp
* 输入十个整数,将其中的最小的数与第一个数互换,最大的数与最后一个数互换。
*/

#include<stdio.h>

void input(int *number);
void max_min_value(int *number);
void output(int *number);

void main()
{
int number[10];

input(number);
max_min_value(number);
output(number);
printf("bye!");
}

void input(int number[])
{
int i;

for(i=0;i<10;i++)
scanf("%d",&number[i]);
return ;
}

void max_min_value(int number[])
{
int i, max_p, min_p,temp;

max_p=min_p=number[0];
temp = 0;
for(i=0;i<10;i++) {
if(number[i]>number[max_p])
max_p=i;
else if(number[i]<number[min_p])
min_p=i;
}
{temp=number[0];number[0]=number[min_p];number[min_p]=temp;}
{temp=number[9];number[9]=number[max_p];number[max_p]=temp;}
return ;