gpt4 book ai didi

C、从单个输入行读取多个数字(scanf?)

转载 作者:太空狗 更新时间:2023-10-29 14:50:49 29 4
gpt4 key购买 nike

我用 C 编写了一个应用程序,需要输入两行。第一个输入告诉 int 数组有多大,第二个输入包含由空格分隔的值。比如下面的输入

5
1 2 3 4 99

应该创建一个包含{1,2,3,4,99}的数组

最快的方法是什么?我的问题是读取多个数字而不遍历整个字符串来检查它是空格还是数字?

谢谢。

最佳答案

int i, size;
int *v;
scanf("%d", &size);
v = malloc(size * sizeof(int));
for(i=0; i < size; i++)
scanf("%d", &v[i]);

完成后记得free(v)!

另外,如果由于某种原因你已经在字符串中有了数字,你可以使用 sscanf()

关于C、从单个输入行读取多个数字(scanf?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2539796/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com