解题思路:找出十个数中的最大和最小值,并且最小值与第一个数换,最大值与最后一个数换。
注意事项:只能够交换最小值与第一个数,最大值与最后一个数,其他数顺序不能变。
参考代码:
#include<stdio.h>
int fun1(int x[10])
{
int i;
for(i=0;i<10;i++)
scanf("%d",&x[i]);
return x[10];
}
int fun2(int x[10])
{
int min,max;
int i,n,t;
min=x[0];
max=x[9];
for(i=1;i<10;i++)
{
if(min>x[i])
{
min=x[i];n=i;//找到最小值所在下标;
}
}
t=x[0];
x[0]=x[n];
x[n]=t;//最小值与第一位数值互换;
for(i=1;i<10;i++)
{
if(max<x[i])
{
if(max<x[i])
{
max=x[i];n=i;//找到最大值所在下标;
}
}
}
t=x[9];
x[9]=x[n];
x[n]=t;
return x[10];//最大值与最后一位数值互换;
}
int fun3(int x[10])
{
int i;
for(i=0;i<10;i++)
printf("%d ",x[i]);
}
int main()
{
int x[10];
fun1(x);
fun2(x);
fun3(x);
return 0;
}
//刚刚接触c语言,有什么错误请各位指正;
0.0分
2 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复