首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >While还是while?

While还是while?
EN

Stack Overflow用户
提问于 2012-10-13 07:53:39
回答 2查看 1.3K关注 0票数 1

我试图让我的程序只在用户输入y或Y时运行,但它只运行一次,即使它不是Y或Y。输入将是Y,y,N或n

代码语言:javascript
复制
printf("Welcome to the Jumble Puzzle Solver!\n\n");
printf("Would you like to enter a jumbled word?\n");
scanf("%s", &answer);


    do{

    printf("What word would you like scored?\n");
    scanf("%s", &letters);

    strcpy(changeletters, letters);

    recursivepermute(letters, changeletters, checkword, k, dictionary ,max, min);

    printf("Would you like to enter a jumbled word?\n");
    scanf("%s", &answer);

    }while (answer == 'Y' || answer == 'y');
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-10-13 07:55:08

do { } while()使主体始终至少执行一次。如果您希望先检查条件,只需使用while:

代码语言:javascript
复制
// If answer is:
// char answer;

scanf("%c", &answer);
while (answer == 'Y' || answer == 'y')
{
     printf("What word would you like scored?\n");
    // ...

    scanf("%c", &answer);
}

如果answer是一个char,你也需要使用scanf("%c"%s将扫描一个字符串(即:char[20]),并且需要使用strcmp或类似的方法进行不同的检查。

票数 1
EN

Stack Overflow用户

发布于 2012-10-13 07:59:54

如果您想让用户玩一次游戏,然后被要求再次玩游戏,那么使用do-while循环更合适。但是,如果您想让用户选择根本不玩游戏,那么可以使用while循环

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12868604

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档