从键盘输入某单位职工的月收入(最多不超过30人),具体人数由键盘输入。试编程输出该单位职最高月收入和最低月收收。 输出格式:printf("min=%10.2f,max=%10.2f\n", ); 要求:利用函数计算n名职工的最高和最低月收入。 函数原型:void find_MaxMin(float income[],int n,float *pmax,float *pmin);
时间: 2024-02-18 16:00:34 浏览: 108
好的,下面是代码实现:
```
#include<stdio.h>
void find_MaxMin(float income[], int n, float *pmax, float *pmin);
int main()
{
int n, i;
float income[30], max_income, min_income;
printf("请输入职工人数:");
scanf("%d", &n);
printf("请输入每个职工的月收入:\n");
for(i=0; i<n; i++)
{
scanf("%f", &income[i]);
}
find_MaxMin(income, n, &max_income, &min_income);
printf("min=%10.2f,max=%10.2f\n", min_income, max_income);
return 0;
}
void find_MaxMin(float income[], int n, float *pmax, float *pmin)
{
int i;
*pmax = income[0];
*pmin = income[0];
for(i=1; i<n; i++)
{
if(income[i] > *pmax)
{
*pmax = income[i];
}
if(income[i] < *pmin)
{
*pmin = income[i];
}
}
}
```
程序运行时,先输入职工人数n,然后输入n个职工的月收入。最后调用函数`find_MaxMin`计算最高和最低月收入,并输出结果。
函数`find_MaxMin`中使用指针变量pmax和pmin来存储最高和最低月收入。函数遍历整个income数组,如果发现比当前最高月收入还高的收入,就把pmax指向该收入;如果发现比当前最低月收入还低的收入,就把pmin指向该收入。最终,pmax和pmin指向的就是最高和最低月收入。
阅读全文