使用VC6打开考生文件夹下的源程序文件modi2.cpp。完成空出的函数fun(int a[],int*index),使函数输入n(<100)个整数到指定数组,求该数组中最大元素的值和此元素的下标,最大元素值以函数值返回,此元素的下标通过指针形参带回调用函

admin2016-10-28  32

问题 使用VC6打开考生文件夹下的源程序文件modi2.cpp。完成空出的函数fun(int a[],int*index),使函数输入n(<100)个整数到指定数组,求该数组中最大元素的值和此元素的下标,最大元素值以函数值返回,此元素的下标通过指针形参带回调用函数。
要求函数实现以下的功能:
(1)获得输入的n个整数;
(2)把最大的数字的下标在第二个参数中输出;
(3)把最大的数字作为返回值。
注意:不能修改程序的其他部分,只能修改fun()函数。
#include<iostream.h>
#define MAXLINE100
int fun(int a[],int*index)
{

}
void main()
{
int A[MAXLINE];
int index;
int maxdata;
maxdata=fun(A,&index);
cout<<"the max data is:"<<maxdata<<" "<<"the posion is:"<<index<<endl;
return;
}

选项

答案int i,n; do//输入数组的大小 { cout<<"Please input n\"; cin>>n; }while(n>99); tout<<"Please input a[n]\n"; for(i=0;i<n;i++)//输入数组中元素的值 { cin>>a[i]; } *index=0;//元素下标值初始化 for(i=1;i<n;i++)//循环找出最大值 { if(a[*index]<a[i]) *index=i;//记录比较大元素的下标 } return a[*index];//返回最大的元素值,其中index为最大值的下标

解析 (1)首先输入数组大小,然后利用循环输入数组元素。
(2)利用for循环对每一个当前数组元素与index标记的元素进行大小比较。
(3)循环中将求得的最大数据a的下标标志位赋给标志位index。
转载请注明原文地址:https://jikaoti.com/ti/lFE0FFFM
0

最新回复(0)