c++定义一个数组a[N](N<=100),输入一个正整数n(1<n<N),然后输入n个不重复的数,输出与 5
定义一个数组a[N](N<=100),输入一个正整数n(1<n<N),然后输入n个不重复的数,输出与平均数差最大的数及其下标。(注意:满足该条件的数至少1个,最多2个)...
定义一个数组a[N](N<=100),输入一个正整数n(1<n<N),然后输入n个不重复的数,输出与平均数差最大的数及其下标。(注意:满足该条件的数至少1个,最多2个)
展开
展开全部
//#include "stdafx.h"//vc++6.0加上这一行.
#include <iostream>
#include "math.h"
using namespace std;
#define N 100
void main(void){
int a[N],n,i,j,k,sum;
cout << "Type an integer(<N)...\nn=";
cin >> n;
for(i=0;i<n;scanf("%d",a+i++));
for(i=1,sum=a[0];i<n;sum+=a[i++]);
double ave=(double)sum/n;
for(i=1,j=0;i<n;i++)
if(fabs(a[j]-ave)<fabs(a[i]-ave)) j=i;
cout << "The maxoffset = " << a[j] << "\nThe subscript = " << j << endl;
for(i=j+1,k=j;i<n;i++)
if(fabs(a[k]-ave)<=fabs(a[i]-ave)) k=i;
if(k!=j) cout << endl << "The maxoffset = " << a[k] << "\nThe subscript = " << k << endl;
}
#include <iostream>
#include "math.h"
using namespace std;
#define N 100
void main(void){
int a[N],n,i,j,k,sum;
cout << "Type an integer(<N)...\nn=";
cin >> n;
for(i=0;i<n;scanf("%d",a+i++));
for(i=1,sum=a[0];i<n;sum+=a[i++]);
double ave=(double)sum/n;
for(i=1,j=0;i<n;i++)
if(fabs(a[j]-ave)<fabs(a[i]-ave)) j=i;
cout << "The maxoffset = " << a[j] << "\nThe subscript = " << j << endl;
for(i=j+1,k=j;i<n;i++)
if(fabs(a[k]-ave)<=fabs(a[i]-ave)) k=i;
if(k!=j) cout << endl << "The maxoffset = " << a[k] << "\nThe subscript = " << k << endl;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询