结构体怎么输入若干个整数到数组C语言
时间: 2024-09-10 18:08:19 浏览: 48
在C语言中,如果你想通过结构体来输入若干个整数到数组,你可以定义一个结构体,该结构体包含一个整数数组和一个表示数组长度的变量。以下是一个简单的例子,展示了如何定义这样的结构体以及如何通过函数来填充数组:
```c
#include <stdio.h>
// 定义一个结构体,包含一个整型数组和一个表示数组长度的整数
typedef struct {
int numbers[10]; // 假设我们输入的数组最大长度为10
int length; // 实际输入的整数数量
} IntArray;
// 函数声明
void inputIntegers(IntArray *arr);
int main() {
IntArray myArray;
inputIntegers(&myArray); // 通过函数输入整数
// 输出输入的整数
printf("输入的整数有:\n");
for (int i = 0; i < myArray.length; ++i) {
printf("%d ", myArray.numbers[i]);
}
printf("\n");
return 0;
}
// 函数定义,用于输入整数到结构体中的数组
void inputIntegers(IntArray *arr) {
printf("请输入整数个数(不超过10个): ");
scanf("%d", &arr->length);
printf("请输入%d个整数:\n", arr->length);
for (int i = 0; i < arr->length; ++i) {
scanf("%d", &arr->numbers[i]);
}
}
```
在这个例子中,我们首先定义了一个结构体`IntArray`,它包含了最多10个整数的数组和一个整数来记录实际填充的数组长度。`inputIntegers`函数用于从用户那里接收整数并存储在结构体的数组中。`main`函数中调用了`inputIntegers`函数,并通过结构体指针传递了`IntArray`实例的地址。
在实际使用中,如果你需要处理的整数数量不确定,可以动态分配内存,而不是使用固定大小的数组。
阅读全文