【发布时间】:2016-04-30 04:41:33
【问题描述】:
我正在尝试从用户输入的整数创建一个数组。它们必须在同一行输入,例如5 1 2 3 1 6.整数的个数可以是任意数量。
但是,第一个数字 + 1 决定了数组的大小。例如。如果用户首先输入数字 5,则它后面必须跟着 5 个其他随机整数,从而使数组的长度为 6。我对如何执行此操作感到困惑,因为用户输入太多。提前致谢!
到目前为止,这是我的代码,但我认为它不会有太大帮助:
#include <stdio.h>
int main(void) {
int arr_days[13];
int i = 0;
printf(" ");
while(i < 13) {
scanf("%d", &arr_days[i]);
i = i + 1;
}
printf("%d", arr_days[0]);
return 0;
}
【问题讨论】:
-
对不起,我只是在编辑它
-
请提出具体问题。您需要帮助的代码是什么?它在哪些方面没有做你想做的事?
-
我要问的问题是如何根据用户输入的第一个数字来确定数组的长度?例如如果用户输入 5 2 5 314 135 123,我如何使数组长度为 6?
-
用
scanf读取第一个数字。然后声明一个可变长度数组 (VLA) 或使用malloc动态分配数组。我会推荐后者。 -
那是基本的C。如果你不知道那意味着你根本没有花时间自学C。 Stackoverflow 不是学习基本 C 的最佳场所。请查阅任何 C 书籍或教程 - 有很多。
标签: c arrays xcode integer user-input