c - 我的第二个扫描功能不起作用,并且默认从数组中提取第二个值

标签 c arrays scanf

在我的代码中,我有一个扫描函数,可以从用户那里获取数组的值。然后它会询问用户想要排序的术语数量。此扫描函数不允许用户输入数字,而是从数组中获取第二个数字。

我尝试更改变量的名称,我已将代码从两个单独的函数移动到同一个函数中。我尝试通过在 scanf 之前和之后放置 print 语句来进行故障排除,这就是我如何发现 scan 变量被分配了数组的第二个值(无论用户在该槽中输入什么),即使它被初始化为0.

输入要排序的元素数量 -> 2 是我的数量

用户应该能够在打印“输入您希望排序的元素数量”后在此处输入 1 到 9 之间的数字。目前,变量 num 被分配为数组中的第二个值,用户没有机会输入数字。

最佳答案

@兴is correct .

//                                                             v  
// for (count = 0; count < SIZE && array[count] != -1; count++);
for (count = 0; count < SIZE && array[count] != -1; count++)

关于c - 我的第二个扫描功能不起作用,并且默认从数组中提取第二个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55678553/

相关文章:

c# - 如何在运行时增加 byte[] 大小?

javascript - Map.prototype.has() 不使用数组作为键?

c# - 在 ASP.NET C# 中将数组转换为 JSON 字符串

c - 如何知道 scanf() 的分界线

c - 将带有空格的字符串拆分为 C 中的字符串 vector

c - c中函数和变量的静态作用域使用

python - 为 Windows 7 编译 IP2Location Python 扩展

c - scanf ("%d", &<变量>);返回 1

c - sscanf C 初学者

c - 为什么可以将双指针(地址的地址)传递给 scanf?