gpt4 book ai didi

c - 将标准输入中的空格分隔的数字读取到链接列表中

转载 作者:行者123 更新时间:2023-11-30 15:13:10 25 4
gpt4 key购买 nike

我正在尝试将标准输入中以空格分隔的数字读取到 C 程序中,并且在每个数字上我将一个节点添加到链接列表中。

来自标准输入的输入:

20
20 30 123 34 50

stdin (20) 中的第一行用于查找编号为 20 的项目。第二行包含要插入链表的数据项输入后应该结束循环,但事实并非如此,我不确定我在这里错过了什么。

  char follow;
scanf("%d", &M);
while(((count = scanf("%d%c", &element, &follow)) > 0))
{
if(count == 2 && isspace(follow) || count == 1)
{
printf("count = %d and element = %d\n", count, element);
push(&root, element);
}
else{
break;
}
}

问题是 while 循环不会在按 Enter 时结束。

最佳答案

您可以更改 if 条件,如下所示:

if ((count == 2 && isspace(follow) && follow != '\n') || count == 1)

因为空格' '和换行'\n'都是空的,所以isspace本身是不够的。

关于c - 将标准输入中的空格分隔的数字读取到链接列表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34805518/

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