3098 - 【设计型】第9章: 指针 9.15 谁是最大的(1)
从键盘上输入10个数据到一维数组中,然后找出数组中的最大值和该值所在的元素下标。
要求调用子函数search(int pa,int n,int pmax,int *pflag)完成,数组名作为实参,
指针作为形参,最大值和下标在形参中以指针的形式返回。
Input
十个整数。中间用空格隔开。
Output
两行数据样例见下。
Examples
Input
1 2 3 4 56 6 7 8 9 10
Output
Max is:56 Max position is:4
Solution C
#include <stdio.h> int search(int *pa,int n,int *pmax,int *pflag); int main() { int a[10],i,max,flag,pmax; for(i=0;i<10;i++) scanf("%d",&a[i]); pmax=search(a,10,&max,&flag); printf("Max is:%d\n",max); printf("Max position is:%d",flag); } int search(int *pa,int n,int *pmax,int *pflag) { int i,*max; max=pmax; *pmax=pa[0]; for(i=1;i<n;i++) { if(*pmax<pa[i]) { *pmax=pa[i]; *pflag=i; } } return *max; }