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 遍历数组