题目:
七个成绩,去掉最低分和最高分,然后求平均,结果保留一位小数。
分析:
在输入的时候寻找最大和最小,记录其下标,然后求和的时候跳过最大和最小。
代码:
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <vector>
#include <queue>
#include <stack>
#include <map>
#include <string>
#include <iomanip>
#include <limits.h>
using namespace std;/* run this program using the console pauser or add your own getch, system("pause") or input loop */int main(int argc, char** argv) {/*freopen("file/input.txt","r",stdin);freopen("file/output.txt","w",stdout);*//*7个double数 去掉最高和最低 然后求平均 */ double max,min,ans;int n=7,index_max=0,index_min=0;double num[7];scanf("%lf",&num[0]);max=min=num[0];for(int i=1;i<7;i++){double tmp;scanf("%lf",&tmp);num[i]=tmp;if(tmp>max){max=tmp;index_max=i;}if(tmp<min){min=tmp;index_min=i;}}//cout<<index_max<<" "<<index_min<<endl;num[index_max]=num[index_min]=0;double sum=0;for(int i=0;i<7;i++){sum+=num[i];}printf("%lf %.1lf\n",sum,sum/5);return 0;
}