有100个不重复的数,随机放在a【100】数组内,请编写一程序实现下列功能;(语言c/c++) A,去除所有能被3

要求是。A,去除所有能被3整除的数B,剩下的数按从大道小顺序排列C,再去掉前10个数和最后10个数D,剩下的所有数算平均值,结果放人b中要完整的程序哦。最好有文字说明,谢... 要求是。
A,去除所有能被3整除的数
B,剩下的数按从大道小顺序排列
C,再去掉前10个数和最后10个数
D,剩下的所有数算平均值,结果放人b中
要完整的程序哦。最好有文字说明,谢谢了
展开
 我来答
做有意义的的事
2011-07-31 · 超过14用户采纳过TA的回答
知道答主
回答量:37
采纳率:0%
帮助的人:33.9万
展开全部
终于给你写完了,完全按照你的要求,由计算机随机产生100个数,呵呵。
如果你不满意,我也可以给你写一个函数的,让你可以控制流程,按照你的意思一步一步进行。

#include<iostream.h>
#include<iomanip.h>
#include<time.h>
#include<stdlib.h>
void main()
{int a[100],c[100];
int k,i,m,t,min_no,sum;double b;
srand(time(NULL));
for(k=0;k<100;k++)
{a[k]=rand()%100;
cout<<setw(4)<<a[k];}

cout<<endl<<"筛选后的数是"<<endl;
for(k=0,i=0;k<100;k++)
{if((a[k]%3!=0)&&(a[k]!=0))
{cout<<setw(4)<<a[k];
c[i]=a[k]; i++;}
}

cout<<endl<<"排列后的数是"<<endl;
for(m=0;m<i;m++)
{for(min_no=m,k=m+1;k<i;k++)
if(c[k]>c[min_no]) min_no=k;
if(min_no!=m) {t=c[m];c[m]=c[min_no];c[min_no]=t;}}
for(m=0;m<i;m++)
cout<<setw(4)<<c[m];
cout<<endl;

cout<<"去掉前后各十个数后是"<<endl;
for(m=10;m<i-10;m++)
cout<<setw(4)<<c[m];
cout<<endl;

cout<<"求得的平均数是"<<endl;
for(m=10,sum=0;m<i-10;m++)
sum+=c[m];
b=sum/(i-21);
cout<<"b="<<b<<endl;

}
百度网友a0546a4
2011-07-31 · 超过32用户采纳过TA的回答
知道答主
回答量:104
采纳率:0%
帮助的人:69.6万
展开全部
说下思路吧:
A 是循环一便,所有对3取余等于0的数字去掉,并计算删除多少个,然后重新申请一个数组
B 然后排序,这个排序方法很多,最简单的是c++中的数组有个成员函数sort直接排序完成
C 这个同理申请一个新数组,然后放进去
D 算平均值
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式