一,成绩
#include<iostream>
#include<math.h>
void main()
{
int a[10];
std::cout<<"请输入成绩。"<<"\n";
for(int i=0;i<10;i++)
{
std::cin>>a[i];
if(a[i]<0||a[i]>100)
{
std::cout<<"输入错误,请重新输入。"<<"\n";
i--;
}
}
void zxc(int a[],int n);
zxc(a,10);
}
void zxc(int a[],int n)
{
int max,min;
int x=0,y=0;
double sum=0.0,aver;
double s,f;
max=min=a[0];
for(int i=0;i<n;i++)
{
sum+=a[i];
aver=sum/n;
if(a[i]>max)
max=a[i];
if(a[i]<min)
min=a[i];
}
for(int j=0;j<n;j++)
{
if(max==a[j])
x++;
if(min==a[j])
y++;
}
for(int d=0;d<n;d++)
{
if(a[d]>aver)
f=a[d]-aver;
if(a[d]<aver)
f=aver-a[d];
if(a[d]==aver)
f=0;
f=f+0;
s=sqrt(f*f/n);
}
std::cout<<"最高成绩为:"<<max<<"\n";
std::cout<<"最低成绩为:"<<min<<"\n";
std::cout<<"平均成绩为:"<<aver<<"\n";
std::cout<<"最高成绩人数为:"<<x<<"\n";
std::cout<<"最低成绩人数为:"<<y<<"\n";
std::cout<<"所有同学成绩的标准偏差为:"<<s<<"\n";
void asd(int p,int q,int a[]);
asd(max,min,a);
}
void asd(int p,int q,int a[])
{
for(int k=0;k<10;k++)
{
if(p==a[k])
std::cout<<"最高成绩的学生为:"<<k+1<<"\n";
if(q==a[k])
std::cout<<"最低成绩的学生为:"<<k+1<<"\n";
}
}
二,求和
#include<iostream>
void main()
{
double a[10];
double x=0,y=0;
std::cout<<"请输入十个数。"<<"\n";
for(int i=0;i<10;i++)
std::cin>>a[i];
for(int j=0;j<10;j++)
{
if(a[j]<0)
{
x=x+a[j];
}
if(a[j]>0)
{
y=y+a[j];
}
}
std::cout<<"正数的和为:"<<x<<"\n";
std::cout<<"负数的和为:"<<y<<"\n";
}
三,数组选择
#include<iostream>
void main()
{
int a[10];
int b[10];
int l=0;
int j=0;
int z=0;
std::cout<<"请输入十个数。"<<"\n";
for(int i=0;i<10;i++)
std::cin>>a[i];
for(j;j<10;j++)
{
for(int k=0;k<10;k++)
{
if(a[j]!=a[k])
z++;
}
if(z==(10-1))
{
b[l]=a[j];
l++;
}
z=0;
}
for(int c=0;c<l;c++)
std::cout<<"数组中不重复的数字为:"<<b[c]<<"\n";
std::cout<<z;
}