c语言数组的定义方式
时间: 2023-09-19 16:10:03 浏览: 46
C语言中数组的定义方式如下:
```
<数据类型> <数组名>[<数组大小>];
```
其中,数据类型表示数组中存储的数据类型,数组名是数组的标识符,数组大小表示数组中元素的个数。例如,定义一个包含10个整数的数组可以写成:
```
int arr[10];
```
这里的数据类型是int,数组名是arr,数组大小是10。需要注意的是,数组的下标从0开始,最大下标为数组大小减1。可以通过下标访问数组中的元素,例如:
```
arr[0] = 1;
arr[1] = 2;
```
这样就分别给数组的第一个元素和第二个元素赋值了。
相关问题
c语言二维数组
C语言中的二维数组是由多个一维数组按顺序排列而成的。其定义方式为:`type array_name[row_size][column_size]`,其中 `type` 表示数组元素的数据类型,`array_name` 为数组名,`row_size` 表示行数,`column_size` 表示列数。
例如,定义一个 `3x4` 的二维整型数组 `arr`,可以这样写:
```c
int arr[3][4];
```
也可以在定义时初始化:
```c
int arr[3][4] = {{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}};
```
访问二维数组元素时,可以使用下标运算符 `[]`,注意第一个下标表示行号,第二个下标表示列号。例如,访问第二行第三列的元素,可以这样写:
```c
arr[1][2] = 7;
```
c语言一维数组逆置
以下是两种C语言一维数组逆置的方法:
方法一:
```c
#include <stdio.h>
int main() {
int n, i;
printf("请输入元素总个数n:\n");
scanf("%d", &n);
int a[n], b[n]; // 定义两个一维变长数组
printf("请输入a[%d]中的元素:\n", n);
// 循环输入a[n]的值
for (i = 0; i < n; i++) {
scanf("%d", &a[i]);
}
// 1.将a[n]中的值逆序输入b[n]中
for (i = 0; i <= n - 1; i++) {
b[i] = a[n - 1 - i];
}
// 2.将b[n]的值正序存入a[n]中
for (i = 0; i <= n - 1; i++) {
a[i] = b[i];
}
printf("倒置后数组中的元素为:\n");
// 3.循环输出a[n]值为倒置后的数组a[n]
for (i = 0; i < n; i++) {
printf("%d ", a[i]);
}
return 0;
}
```
方法二:
```c
#include <stdio.h>
int main() {
int n, i;
printf("请输入总元素个数n:\n");
scanf("%d", &n);
int a[n]; // 定义变长数组a[n]
printf("请输入a[%d]中的元素:\n", n);
// 元素输入
for (i = 0; i < n; i++) {
scanf("%d", &a[i]);
}
int temp; // 定义中间变量temp
// 功能函数:交换n/2次,每次都把头尾元素交换
for (i = 0; i <= n / 2 - 1; i++) {
temp = a[i];
a[i] = a[n - 1 - i];
a[n - 1 - i] = temp;
}
printf("元素倒置后:\n");
// 元素输出
for (i = 0; i < n; i++) {
printf("%d ", a[i]);
}
return 0;
}
```