如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
如何使用下标遍历一维数组
1.2如何使用下标遍历一维数组
这是一个微不足道的问题。在数据结构中,经常需要遍历数组,我们可以使用任何逻辑来遍历数组。为此,我们可以使用简单循环。我们能够通过下标或通过与数组元素类型相同的指针来访问数组元素。在希望使用指针访问数组元素的情况下,我们需要使用数组的基地址(也就是第一个元素的地址)来初始化指针。下面的代码展示了如何使用下标来访问数组元素:
1.//在C中使用下标
2.intmy_array_name[4]={10,20,30,40};
3.intcounter=0;
4.for(counter=0;counter<4;counter++)
5.printf("%d\n",my_array_name[counter]);
数组名就是一个指向该数组的指针,除此之外它什么也不是。
1.2.1如何使用指针遍历一维数组
1.//使用指针
2.intmy_array_name[4]={10,20,30,40};
3.intcounter=0;
4.for(counter=0;counter<4;counter++)
5.printf("%d\n",*(my_array_name+counter));
1.2.2如何使用下标遍历二维数组
1.intmy_2d_array[10][10];
2.//假定数组my_2d_array已经预先被填充了数据
3.inti,j;//遍历这个数组
4.for(i=0;i<10;i++)//向下遍历各行
5.for(j=0;j<10;j++)//穿越各列
6.printf("%d",a[i][j]);
7.printf("\n");
8.
1.2.3如何使用指针遍历二维数组
9.for(i=0;i<10;i++)
10.for(j=0;j<10;j++)
11.printf("%d",*(*(a+i)+j));1
2.printf("\n");
1.3如何操作数组元素
在数据结构中,你或许必须求数组元素的和,或者对数组元素作某种类型的数学运算。为了让事情更复杂,你或许需要对数组下标进行函数运算,之后使用满足某个预先确定条件的那些下标的元素,并将这些元素作为另一个函数的参数。下面是输出1~10之间偶数平方的一段代码:
1.#include<stdio.h>
2.#include<conio.h>
3.#include<math.h>
4.intisEven(intm)
5.{
6.returnm%2==0?1:0;
7.}
8.
9.intmain()
10.{
11.inta[10];inti;for(i=0;i<9;i++)
12.a[i]=i+1;
13.for(i=0;i<9;i++)
14.
{15.//检查下标是不是偶数
16.if(isEven(i+1))
17.//能够完成像
18.//加法
19.//乘法
20.//之类的任何数学运算
21.printf("%f\n",pow((float)a[i],2));
22.}
23.getch();
24.return0;
25.}你或许被要求对数组的某个特定部分进行函数运算。例如,如果想找出某个数是否能够被11整除,那么你需要找出偶数位置和奇数位置数字和之间的差值。下面给出了一些数组元素的操作示例:
1.4如何把指定范围内的数据元素加起来
这个函数把数组的所有元素加起来,并把和返回给调用方法。这个函数以数组名称和开始下标与结束下标作为参数。下面是C代码:
1.intAdd(intarray[],intstart,intfinish)
2.{
3.inti=start;
4.intsum=0;
5.for(;i<=finish;i++)
6.sum+=array[i];
7.returnsum;
8.}这个方法把位于开始下标和结束下标(包括这两个下标)之间的所有数组元素加起来。比如说,存在下面的数组:
1.inta[]={1,2,3,4,5,66,7,8,9,10,11,12};我们想把1~5加起来;那么我们可以用Add(a,0,6)调用上面的方法。如果把开始下标设为0,结束下标设为数组元素的个数减1,那么这个函数就能够用于计算所有数组元素的和。也就是说,对于上面的数组,如果你想计算所有数组元素的和,那么我们应该编写:
1.Add(a,0,11);
1.5如何把数组中偶数位置和奇数位置的元素加起来
要把指定范围内的元素加起来,我们能够像上面的代码那样传递开始下标和结束下标。我们能够让这个函数更加智能化。这一智能函数能够用于将数组中偶数位置或奇数位置内的整数加起来,或者能够用于返回指定范围所有元素的和。将一个标志作为第三个参数传递。如果该参数为0,那么方法返回指定范围内(包括开始下
ys****39
实名认证
内容提供者
最近下载