如何修复这个简单的 do/while 循环?

How can I fix this simple do/while loop?

我查看了多个具有相同问题的问题,但不幸的是,它们的循环存在不同类型的问题。

我希望代码在用户输入的文本超过一个字符时输出 "This is long enough"。

每次我输入内容时,系统都会再次提示我回答。

我是 c 的新手,我不确定我搞砸了什么。

int length;

do
{
    string text = get_string("INPUT:");
    length = strlen(text);
}

while(length >= 1);

printf("This is long enough.");

你的 while 条件是错误的。您的循环将 运行 直到用户输入的文本少于一个字符(即没有文本)。请记住,只要条件为真,循环就会 运行 。相反:

while(length <= 1);

只要您的字符串不超过 1 个字符,这就会 运行 并在超过 1 个字符时停止。