今天我分享的代码是自定义函数之整数处理
这道题的题目要求如下:
输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。写三个函数; ①输入10个数;②进行处理;③输出10个数。
当读完题目要求后,很容易就能知道可以利用数组的遍历找出最大最小值从而和对应位置进行交换即可。
于是我的第一个代码是这样写的
#include<stdio.h>
int main()
{int a[10],i,j=0,k=0,min,max;
for(i=0;i<10;i++){
scanf("%d",&a[i]);//扫描10个数字
} min=a[0];//设第一个为最大最小作为开始位置
max=a[0];
for(i=0;i<10;i++){//这个循环中,暴力进行逐个之间的比较,
//如果有比当前最小值小的或者比当前最大值大的都进行替换。
if(min>=a[i]) {
min=a[i];
j=i; //找出对应的位置
}
if(max<=a[i]){
max=a[i];
k=i;
}
}
a[j]=a[0];
a[k]=a[9];
a[0]=min;
a[9]=max;
for(i=0;i<10;i++){
printf("%d ",a[i]);
}
return 0;
但是我忽略了一个问题,就是当如果出现在第一个位置出现最大值或者最