7-1 利用指针返回多个函数值
分数 30
全屏浏览题目
切换布局
作者 陈晓梅
单位 广东外语外贸大学
读入n个整数,调用max_min()函数求这n个数中的最大值和最小值。
输入格式:
输入有两行:
第一行是n值;
第二行是n个数。输出格式:
输出最大值和最小值。
输入样例:
在这里给出一组输入。例如:
5 8 9 12 0 3
输出样例:
在这里给出相应的输出。例如:
max = 12 min = 0
#include<stdio.h>
void max_min(int* p1,int* p2,int a) //传址调用
{
if(*p1<a){*p1=a;}
if(*p2>a){*p2=a;}
}
int main()
{
int n,a,max,min;
scanf("%d",&n);
for(int i=0;i<n;i++)
{
scanf("%d",&a);
if(i==0){max=a;min=a;} //或许可以称为初始化。。。
max_min(&max,&min,a); //max,min的地址
}
printf("max = %d\nmin = %d\n",max,min);
return 0;
}
传址调用(用到指针):函数内部要修改主调函数中的变量的值。
传值调用 :函数中只是需要主函数中的变量值来实现计算。