c语言输入数组并求数组长度
时间: 2023-12-02 14:05:38 浏览: 79
以下是两种C语言输入数组并求数组长度的方法:
1.使用sizeof()函数获取数组长度
```c
#include <stdio.h>
int main() {
int nums[5];
int len = sizeof(nums) / sizeof(nums[0]);
printf("数组长度为:%d", len);
return 0;
}
```
输出结果为:数组长度为:5
2.使用strlen()函数获取字符数组长度
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[20];
printf("请输入一个字符串:");
scanf("%s", str);
int len = strlen(str);
printf("字符串长度为:%d", len);
return 0;
}
```
输出结果为:字符串长度为:输入字符串的长度
相关问题
c语言输入数组不设定数组长度
在C语言中,我们可以使用动态内存分配的方式来输入数组而不设定数组长度。具体实现方法如下:
1. 使用指针变量动态分配内存空间,例如:int *a = (int*)malloc(sizeof(int)*n),其中n为需要输入的数组长度。
2. 使用循环结构输入数组元素,例如:for(int i=0;i<n;i++){scanf("%d",&a[i]);}。
3. 使用完数组后,需要释放动态分配的内存空间,例如:free(a)。
另外,还可以使用realloc()函数来重新分配内存空间,实现动态输入数组的功能。
c语言 输入数组长度 怎么定义数组
在 C 语言中,定义数组需要指定数组的类型和数组的长度。如果要动态输入数组的长度,可以使用变量来表示数组的长度,如下所示:
```c
int n; // 变量 n 表示数组的长度
scanf("%d", &n); // 输入数组的长度
int arr[n]; // 定义长度为 n 的数组
```
需要注意的是,C 语言标准中并不支持变长数组(VLA)的定义方式,上述代码需要编译器支持 C99 标准才能够编译运行。如果编译器不支持 C99 标准,则可以使用动态内存分配的方式来实现动态数组。