我是C新手,我有一个任务,其中我得到了输入为n
的空格分隔整数,和q
整数用新行分隔。我想将n
整数保存在一个数组a
中,并将q
整数保存在另一个数组m
中。空格分隔整数到数组
这是我的代码到目前为止,它的预期工作为m
,但a
中的元素是相当随机的。如何将空格分隔的整数保存到数组中?
int main() {
// The code
int n, q;
int a[n];
int m[q];
scanf("%d %d", &n, &q);
for (int i=0; i<n; i++) {
scanf("%d", &a[i]);
}
for (int i=0; i<q; i++) {
scanf("%d", &m[i]);
}
// Troubleshooting
for (int i=0; i<n; i++) {
printf("%d ", a[i]);
}
printf("\n");
for (int i=0; i<q; i++) {
printf("%d\n", m[i]);
}
return 0;
}
例如,当我输入:
1 2 3 4 5 6
0
1
2
3
4
5
我得到:
4 5 3 4 5 6
0
1
2
3
4
5
欢迎来到Stack Overflow。 请注意,在这里说'谢谢'的首选方式是通过 提高投票的好问题和有用的答案(一旦你有足够的声誉这样做),并接受任何 问题最有用的答案,你问(这也给你一个小小的提升,以你的声望 )。 请参阅[关于]页面,以及[如何在此处提问 ?]和 [当有人回答我的 问题时,我该怎么办? ?](http://stackoverflow.com/help/someone-answers) –
你只想解析有效的输入或检测无效的输入吗? – chux