C++实验五—项目2:数组选择

来源:互联网 发布:saa7104监控软件 编辑:程序博客网 时间:2024/06/06 03:44

一、问题及代码

/*   * 文件名称:  xuanze.cpp * 作    者:  习佳星  * 完成日期: 2017年5月5日  * 版 本 号:  v1.0   * 对任务及求解方法的描述部分: 利用数组选择出不重复的数到另一个数组中* 输入描述:  略   * 问题描述:  较容易,需要熟悉掌握数组的运用和细节处理* 程序输出:  “请输入任意十个数:1 1 2 3 3 4 5 6 6 7  不重复数字为:2 4 5 7 ”* 问题分析:  略 * 算法设计:   略 */    #include <iostream>  using namespace std;  int main()  {      int A[10],B[10],i,j,k=0;  cout<<"请输入任意十个数:";    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==10)  B[k++]=A[i];}if(k==0)cout<<"无不重复数字"<<endl;cout<<"不重复数字为:";for(i=0; i<k; i++)cout<<B[i]<<" ";cout<<endl;return 0;  }  


二、输出结果


三、心得体会:

            数组是目前学习当中较难的一个内容,需要自己不断去揣摩和思考,许多东西还需要逻辑的思考,此外,数组又和循坏联系在一起,更加凸显了数组之难。

            因此,在这上面需要花费更多时间和精力,虽然一下子会有点接收慢,但在经过反复练习还是会有进步的,主要靠自己课后的复习及操作练习,既然遇到了学习瓶颈,就更因勤加练习。多练多用掌握其规律,自然解题也就简单了。还有就是要多问别人,不会的地方向同学讨教一下,实在不会就等老师讲了再做,总会弄明白。

四、知识点总结:

            利用了循环,一个数组的输入和输出都与循环密不可分;正确利用好break,使用在恰当位置。分析好其中的逻辑关系,最好用纸写下来,在电脑上胡乱修改反而不容易想出来

            编译过程中发现存在细节问题,因为很有可能数组中一个重复数字都不存在,这就需要多添加两步,若不存在,则输出无不重复数字,这样考虑就更全面,程序更好;还有找重复数时A[i]=A[j]容易想到,但忘了i!=j的话,程序输出无不重复数字,所以这个细节不能忘。编译中k++可放在B[ ]内,使程序更简单。

0 0
原创粉丝点击