首页 > 编程知识 正文

c语言指针用法举例,c语言输出字符串数组

时间:2023-05-03 23:13:55 阅读:110522 作者:2562

一维数组的定义与初始化

一维数组是一个只有一个下标的数组,用于表示一组相同类型的数据。 在c语言中,一维数组定义如下

类型说明符数组名称[常量表达式]在上述语法格式中,类型说明符表示数组中所有元素的类型,常量表达式表示数组的长度,即数组中存储的元素数。

范例

int array[5l;

上述代码定义数组。 其中int是数组类型,aray是数组的名称,方括号中的5是数组的长度。 数组定义完成后,只为数组中的元素打开了内存空间。 此时,如果想使用数组操作数据,还需要初始化数组。 数组初始化的一般方法有三种,具体如下

)1)直接为数组中的所有元素指定值。 示例代码如下所示。

inti [5]={ 1,2,3,4,5 };

上述代码定义了长度为5的数组I,数组中元素的值依次为1、2、3、4、5。

)2)只为数组中的某些元素赋值。 示例代码如下所示

inti [5]={ 1,2,3 };

在上面的代码中,定义了int类型的数组,但初始化时只为数组中的前三个元素赋值,其他元素的值默认设置为

)3)为数组中的所有元素赋值,但不指定长度。 示例代码如下。

inti [ ]={ 1,2,3,4 };

在上面的代码中,数组I的元素有四个,数组的长度由给定的初始化元素的数量定义。 因此,数组I的长度为4。

注意

(1)数组下标放在括号内,不是括号。

)数组名称的命名与变量名的命名规则相同;

)3)在数组的定义中,常数式的值可以是符号常数,定义如下是正当的。

int a[N]; //假设预编译命令#define N 4,下标为符号常数

一维数组引用

程序经常需要访问数组中的某些元素。 在这种情况下,可以使用数组名称和下标在数组中引用

请参阅。 一维数组元素的引用如下:

数组名称[下标]

在上述方式中,下标指向数组元素的位置,数组元素的下标从0开始。 例如,引用数组x的第三个元素的方法是X[2]。 为了便于理解数组元素引用列表下的行业通用房间示例,请执行以下操作:

#includestdio.h

voidmain(intargc,char *argv[] ) )。

intx [5]={ 2,3,1,4,6 };

int i;

for(I=0; i 5; I ) {

printf(%d(n ),2 * x[i];

}

}

结果如下图所示。

在上面的情况中,首先定义数组x,以下标的形式获取数组中的元素,最后将元素乘以2并输出。

注意

数组的下标有“0~[数组的长度-1]”的范围。 如果数组的长度为6,则下标范围为0~5。 访问数组中的元素时,下标不要超出此范围。 否则,程序会报告错误。

一维数组的常见操作

数组在编写程序时使用非常广泛。 灵活地使用数组对实际开发很重要,例如,需要频繁遍历数组、获取最大值和排序。 下面详细介绍一维数组的一般操作。 具体情况如下。

1、一维数组的遍历

在处理数组时,经常需要按顺序访问数组中的每个元素。 此操作称为数组遍历。 然后,使用for循环按顺序遍历数组中的元素,如下所示:

#includestdio.h

voidmain(intargc,char *argv[] ) )。

intx [5]={ 2,3,1,4,6 };

int i=0;

for(I=0; i 5; I ) {

printf(x ) %d ) :%d(n ),I,x ) I );

}

}

执行结果如下。

在上面的情况中,首先定义了长度为5的数组x,然后定义了变量。 数组的下标范围为0-4,因此可以将I的值作为下标依次访问数组中的元素,并输出元素的值。

2、一维数组的最值

使用数组时,经常需要获取数组中元素的最大值。 以下是一个案例研究,演示了如何获取数组中最大的数值。

#includestdio.h

intmain(intargc,char *argv[] ) ) ) )

intx [5]={ 2,3,1,4,6 }

};

    int nMax = x[0];

    int i = 0;

    for (i = 0; i < 5; i++) {

        if (x[i] > nMax) {

            nMax = x[i];

        }

    }

 

    printf("max:%dn", nMax);

    return 0;

}

运行结果如下

在上面案例找那个实现了获取数组X最大值的功能。在第5行代码中假定数组中的第1个元素为最大值,并将其赋值给nMax,在第7~13行代码对数组中的其他元素进行遍历,如果发现比mMax值大的元素,就将最大值nMx设置为这个元素的值,这样,当数组遍历完成后,nMax中存储的就是数组中的最大值。

3、一维数组的排序

在操作数组时,经常需要对数组中的元素进行排序。接下来为大家介绍一种比较常见的排序算法一冒泡排序。在冒泡排序的过程中,不断地比较数组中相邻的两个元素,较小者向上浮、较大者往下沉,整个过程和水中气泡上升的原理相似,接下来,分步骤讲解冒泡排序的整个过程,具体如下。

第1步,从第1个元素开始,将相邻的两个元素依次进行比较,直到最后两个元素完成比较。如果前1个元素比后1个元素大,则交换它们的位置。整个过程完成后,数组中最后1个元素自然就是最大值,这样也就完成了第1轮的比较。

第2步,除了最后1个元素,将剩余的元素继续进行两两比较,过程与第1步相似,这样就可以将数组中第二大的数放在倒数第2个位置。

第3步,依次类推,持续对越来越少的元素重复上面的步骤,直到没有任何一对元素需要比较为止。

了解了冒泡排序的原理之后,接下来通过一个案例来实现冒泡排序。

在上面的案例中,通过嵌套for循环实现了冒泡排序。其中,外层循环用来控制进行多少轮比较,每一轮比较都可以确定1个元素的位置,由于最后1个元素不需要进行比较,因此,外层循环的次数为数组的长度-1,内层循环的循环变量用于控制每轮比较的次数,在每次比较时,如果前者小于后者,就交换两个元素的位置。下面通过一张动图来演示冒泡排血的运算过程。

学C++推荐http://yun.itheima.com/map/25.html?2020zylyk

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。