原题链接:[编程入门]自定义函数之整数处理
解题思路:
注意事项:
参考代码:
#define _CRT_SECURE_NO_WARNINGS // 这是一个预处理指令,用于禁止编译器产生与安全性相关的警告,通常在使用一些不建议使用的函数时需要添加这个宏定义。
#include <stdio.h> // 包含标准输入输出库的头文件,以便使用printf和scanf等函数。
#define N 10 // 定义一个名为N的常量,它的值为10,表示数组的大小。
// 以下是两个函数定义:
// 从数组a中找到最小值并将其与数组中的第一个元素交换位置
void swapmin(int a[])
{
int min = a[0]; // 初始化min为数组的第一个元素
int t; // 用于保存最小值的索引
for (int i = 0; i < N; i++)
{
if (min > a[i]) // 如果找到比min更小的值
{
min = a[i]; // 更新min
t = i; // 更新t为最小值的索引
}
}
int temp = a[0];
a[0] = a[t]; // 将最小值与数组的第一个元素交换位置
a[t] = temp;
}
// 从数组a中找到最大值并将其与数组中的最后一个元素交换位置
void swapmax(int a[])
{
int max = a[0]; // 初始化max为数组的第一个元素
int t; // 用于保存最大值的索引
for (int i = 0; i < N; i++)
{
if (max < a[i]) // 如果找到比max更大的值
{
max = a[i]; // 更新max
t = i; // 更新t为最大值的索引
}
}
int temp = a[N - 1];
a[N - 1] = a[t]; // 将最大值与数组的最后一个元素交换位置
a[t] = temp;
}
int main()
{
int a[N]; // 声明一个大小为N的整数数组
for (int i = 0; i < N; i++)
{
scanf("%d", &a[i]); // 从标准输入中读取10个整数并存储到数组a中
}
swapmin(a); // 调用swapmin函数,将数组中的最小值与第一个元素交换
swapmax(a); // 调用swapmax函数,将数组中的最大值与最后一个元素交换
for (int i = 0; i < N; i++)
{
printf("%d ", a[i]); // 输出经过交换后的数组元素
}
return 0;
}0.0分
1 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复