一、问题及代码
/*
* 文件名称:Ex1-1.cpp
* 作 者:黄湘旖
* 完成日期:2017 年 5 月 5 日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:
* 输入描述:无
* 问题描述: 从键盘中输入10个数放在数组A中,将该数组中不重复的数放到数组B中,如A数据中的值为1,2,3,4,2,1;则B数组中的值为3 4
* 程序输出:
* 问题分析:
* 算法设计:
*/
#include <iostream>
using namespace std;
int main()
{
int a[10],b[10];
int i,j,k=0,m;
for(i=0;i<10;i++)
{
cin>>a[i];
}
for(i=0;i<10;i++)
{
for(j=0;j<10;j++)
{
if(a[i]==a[j]&&i!=j)
break;
if(j==9)
{
b[k++]=a[i];
m=k;
}
}
}
for(i=0;i<m;i++)
{
cout<<b[i]<<endl;
}
}
二、运行结果:
一、问题及代码
/*
* 文件名称:Ex1-1.cpp
* 作 者:黄湘旖
* 完成日期:2017 年 5 月 5 日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分: 成绩
* 输入描述:
* 问题描述:在数组score中将要存储某小组程序设计的成绩(设有10人),编程实现下列功能:
(1)输入小组人数及成绩,要保证成绩在0-100之间;
(2)输出该小组的最高成绩、最低成绩、平均成绩;
(3)输出考得最高成绩和最低成绩的同学的人数;
(4)输出考得最高成绩和最低成绩的同学的学号(设数组下标即学号,可能有相同的成绩)。
* 程序输出:
* 问题分析:略
* 算法设计:略
*/
#include <iostream>
using namespace std;
int main()
{
int n;
cout<<"请输入小组人数:";
cin>>n;
double score[n];
double ave,max,min;
int i,j,k;
int a=0,b=0;
int c[n],d[n];
cout<<"请输入分数:";
for(i=0;i<n;i++)
{
cin>>score[i];
if(score[i]<=100&&score[i]>=0)
ave+=score[i]/n;
else
{
cout<<"数据错误!";
i--;
}
}
max=score[0];
min=score[0];
for(i=0;i<n;i++)
{
if(max<score[i])max=score[i];
if(min>score[i])min=score[i];
}
cout<<"最高成绩是:"<<max;
cout<<"最低成绩是:"<<min;
cout<<"平均成绩是:"<<ave;
for(i=0;i<n;i++)
{
if(score[i]==max)a++;
if(score[i]==min)b++;
}
cout<<"取得最高分的人数有:"<<a<<"人"<<endl;
cout<<"取得最低分的人数有:"<<b<<"人"<<endl;
for(i=0;i<n;i++)
{
if(score[i]==max)
{
for(j=0;j<a;j++)
{
c[j]=i+1;
}
}
if(score[i]==min)
{
for(k=0;k<b;k++)
{
d[k]=i+1;
}
}
}
cout<<"分数最高的人的学号是:";
for(i=0;i<a;i++)
{
cout<<c[i]<<",";
}
cout<<"分数最低的人的学号是:";
for(i=0;i<b;i++)
{
cout<<d[i]<<",";
}
return 0;
}
二、运行结果: