请教一道一维数组题目

熬夜王者 2005-03-21 11:20:13

main()
{
int man[10],max,min,p,x,sum;
for(x=0,sum=0;x<10;x++)
{
printf("请输入第%d评委给出的得分:",x+1);
scanf("%d",&man[x]);
max=man[0];
if(man[x]>max)
max=man[x];
min=man[0];
if(man[x]<min)
min=man[x];
sum=sum+man[x];
}
p=(sum-max-min)/8;
printf("去掉一个最高分:%d 和一个最低分:%d,最后得分:%d",max,min,p);
getch();
}


哪错了,我觉得很合理............原来对的,后来改呀改,就错了~~现在都不知道错哪.....请各位指点一下
...全文
170 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
熬夜王者 2005-03-22
  • 打赏
  • 举报
回复
谢谢各位,我把分给结了.............
bluedodo 2005-03-21
  • 打赏
  • 举报
回复
yc0188(守护瓶(萍)) 应该是对的啊,I/O都是用的C
justioo 2005-03-21
  • 打赏
  • 举报
回复
# include<iostream>
# include<vector>
# include<algorithm>
# include<numeric>
using namespace std;

void main()
{
vector<double> score_vec;

for(int i=1;i<=10;i++)
{
cout<<"输入第"<<i<<"位评委的分数:\n ";
double temp;
cin>>temp;

score_vec.push_back(temp);
}

sort(score_vec.begin(),score_vec.end());

cout<<"\n去掉一个最低分: "<<score_vec[0]<<endl;
cout<<"\n去掉一个最高分: "<<*(score_vec.end()-1)<<endl;

double count=accumulate(score_vec.begin()+1,score_vec.end()-1,0);

cout<<"\n最后得分:"<<count/(score_vec.size()-2)<<endl;

system("PAUSE");

}
yuchengliu 2005-03-21
  • 打赏
  • 举报
回复
main()
{
int man[10],max,min,p,x,sum;
printf("请输入第%d评委给出的得分:",1);
scanf("%d",&man[0]);
min=man[0];
max=man[0];
for(x=1,sum=max;x<10;x++)
{
printf("请输入第%d评委给出的得分:",x+1);
scanf("%d",&man[x]);

if(man[x]>max)
max=man[x];

if(man[x]<min)
min=man[x];
sum=sum+man[x];
}
p=(sum-max-min)/8;
printf("去掉一个最高分:%d 和一个最低分:%d,最后得分:%d",max,min,p);
getch();
}
skywgs 2005-03-21
  • 打赏
  • 举报
回复
没问题呀,你是出现什么问题呀?
laZZe 2005-03-21
  • 打赏
  • 举报
回复
好象是正确的呀?可以运行的,没有提示错误~~
汗~~~
晨星 2005-03-21
  • 打赏
  • 举报
回复
max=man[0];
min=man[0];
这两句都拿到for外边去。
ycom__net 2005-03-21
  • 打赏
  • 举报
回复
#include <stdio.h>
#include <stdlib.h>
int main()
{
int man[10],max=0,min=0,p,x,sum;
for(x=0,sum=0;x<10;x++)
{
printf("请输入第%d评委给出的得分:",x+1);
scanf("%d",&man[x]);
if(man[x]>max)
max=man[x];

if(man[x]<min)
min=man[x];
sum+=man[x];
}
p=(sum-max-min)/8;
printf("去掉一个最高分:%d 和一个最低分:%d,最后得分:%d",max,min,p);
system("PAUSE");
return 0;
}
skywgs 2005-03-21
  • 打赏
  • 举报
回复
max=man[0];
min=man[0];
这两句应放在一个if里,如下:

if(x==0)
{
max=man[0];
min=man[0];
}


或放到for外:

max=0;
min=100;

假设是满分为100

33,321

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧