【发布时间】:2021-03-31 04:24:49
【问题描述】:
for(int i=0;i<num; i++)
{
char word[32];
scanf(" %[^\n]s",word);
makeDictionary(word, readDictionary);
}
我有一个程序,我想向用户询问某些字符串 n 次(允许间距)。但是,当他们输入例如 n = 2 时,它只循环一次并且存在。我知道我的 scanf 有问题。
我是 Java 的,我是 C 的初学者。字符串的处理方式非常不同。
【问题讨论】:
-
????????请在此处以纯文本形式发布代码、错误、示例数据或文本输出,而不是难以阅读、无法复制粘贴以帮助测试代码或在答案中使用的图像,并且对依赖的人构成障碍在屏幕阅读器或翻译工具上。您可以编辑问题以在问题正文中添加代码。为了便于格式化,请使用
{}按钮标记代码块,或使用四个空格缩进以获得相同的效果。 屏幕截图的内容无法搜索、作为代码运行或复制和编辑以创建解决方案。 -
在 C 语言中,检查您调用的函数的返回值并根据其含义做出反应非常重要。
-
它会循环多少次取决于
num,不幸的是我们无法知道num是什么,因为您发布的图像显示太少。如果可以的话,也不要使用文本而不是图像,图像非常烦人。 -
@KrishnaKanthYenumula 感谢您为转录图片所做的努力。但这只是说明了为什么在 StackOverflow 上不欣赏文本图片,因为您键入的代码与图片中的代码不完全相同。格式说明符字符串的差异甚至可能是相关的。问题的作者可以选择复制粘贴文本,没有其他人。所以作者应该用文字代替图片。
-
Hidaisyen,请直接在此处提供minimal reproducible example 文本。因为meta.stackoverflow.com/a/285557/7733418(@Bonny 你评论的效果相同,请尝试在像你这样的适当评论中输入
[mre]。)