基础训练

8. 案例:查找

需求:已知一个数组arr = {19,28,37,46,50};键盘录入一个数据,查找该数据在数组中的索引,并在控制台中输出找到的索引值。

分析:
    键盘录入一个数据后,让这个数据和数组中的每一个元素进行比较,如果数据值相等,返回该数据值对应的索引即可。
    但是,假如录入了一个数组中不存在的数据,这个时候,就没有任何内容输出了,很明显是有问题的,在实际开发中,如果对应的索引不存在,我们一般都是返回一个负数,而且经常用-1来表示。

思路:
    1 定义一个数组,用静态初始化完成数组元素的初始化
    2 键盘录入要查找的数据,用一个变量接收
    3 定义一个索引变量,初始值为 -1
    4 遍历数组,获取到数组中的每一个元素
    5 拿键盘录入的数据和数组中的每一个元素进行比较,如果值相同,就把该值对应的索引赋值给索引变量,并结束循环
    6 输出索引变量

定义一个方法  查找指定的数据在数组中的索引(另一种实现形式)

9. 案例:反转

需求:
    已知一个数组arr = {19,28,37,46,50};用程序实现把数组中的元素值交换,
    交换后的数组arr = {50,46,37,28,19};并在控制台输出交换后的数组元素。

分析:
    第1个元素和最后一个元素交换
    第2个元素和倒数第二个元素交换
    第3个元素和倒数第三个元素交换
    ...

元素交换:
    假如数组开始索引叫start,结束索引叫end
int temp = arr[start];
arr[start] = arr[end];
arr[end] = temp;
(temp 临时空间)

思路:
     1 定义一个数组,用静态初始化完成数组元素的初始化
     2 循环遍历数组,这一次初始化语句定义两个索引变量,判断条件是开始索引小于等于结束索引
     3 变量交换
     4 遍历数组

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 5. 案例:百钱百鸡 需求:我国古代数学家张丘建在《算经》一书中提出的数学问题:鸡翁一值钱五,鸡母一值钱三,鸡雏三...
    末芥阅读 494评论 0 1
  • 案例:逢七过 需求:朋友聚会的时候可能会玩一个游戏:逢七过。规则是:从任意一个数字开始报数,当你要报的数字包含7或...
    末芥阅读 428评论 0 1
  • 问题描述 给定一个长度为n的数列,将这个数列按从小到大的顺序排列。1<=n<=200 输入格式 第一行为一个整...
    Zy_0818阅读 1,131评论 1 4
  • 环境安装 Dart 环境 开发工具 VS Code + Flutter 插件 + Dash 基础语法 变量 dar...
    YxxxHao阅读 2,263评论 1 4
  • 今天感恩节哎,感谢一直在我身边的亲朋好友。感恩相遇!感恩不离不弃。 中午开了第一次的党会,身份的转变要...
    迷月闪星情阅读 10,617评论 0 11