输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。要求写3个函数:①输入10个数;②进行处理;③输出10个数。 函数接口定义: void input(int *p); void proc(int *p); void output(int *p); 其中函数 input 实现输入10个整数,函数proc 实现将最小的数与第一个数对换,把最大的数与最后一个数对换,函数output 实现输出10个整数,每个整数用%3d格式输出。
时间: 2023-12-04 13:07:36 浏览: 27
C语言程序设计-从键盘为一维整型数组输入10个整数,调用fun函数找出其中最小的数,并在main函数中输出;本.c
5星 · 资源好评率100%
以下是完整的代码实现:
```c
#include <stdio.h>
void input(int *p);
void proc(int *p);
void output(int *p);
int main()
{
int nums[10];
input(nums);
proc(nums);
output(nums);
return 0;
}
void input(int *p)
{
printf("请输入10个整数:\n");
for (int i = 0; i < 10; i++)
{
scanf("%d", p + i);
}
}
void proc(int *p)
{
int min_index = 0, max_index = 0;
for (int i = 1; i < 10; i++)
{
if (*(p + i) < *(p + min_index))
{
min_index = i;
}
if (*(p + i) > *(p + max_index))
{
max_index = i;
}
}
int tmp = *p;
*p = *(p + min_index);
*(p + min_index) = tmp;
tmp = *(p + 9);
*(p + 9) = *(p + max_index);
*(p + max_index) = tmp;
}
void output(int *p)
{
printf("处理后的数列为:\n");
for (int i = 0; i < 10; i++)
{
printf("%3d", *(p + i));
}
printf("\n");
}
```
函数 `input()` 实现输入10个整数,函数 `proc()` 实现将最小的数与第一个数对换,把最大的数与最后一个数对换,函数 `output()` 实现输出10个整数。主函数中依次调用这三个函数实现完整的处理过程。
阅读全文